Commit Graph

1177 Commits

Author SHA1 Message Date
greg 1bd48ed5db Fix problem with parsing commas
I should probably rethink how delimited block expressions like if-blocks
(and eventually for-blocks) work
2018-11-05 13:07:08 -08:00
greg c394b81746 More pattern-matching 2018-11-05 04:02:04 -08:00
greg ec29077247 More tuple-matching
Also discovered parser bug
2018-11-05 03:41:03 -08:00
greg 62043ac2d1 Starting on pattern-matching tuples
Lots of duplicated code here
2018-11-05 03:17:03 -08:00
greg bada386979 More work on subpattern matching 2018-11-03 12:53:09 -07:00
greg e71d404071 Finished this refactor 2018-11-02 19:54:04 -07:00
greg cab4702bd6 Refactoring matching - WIP
doesn't work yet
2018-11-01 02:43:47 -07:00
greg ec5a9d457e String patterns 2018-10-31 01:45:16 -07:00
greg bfbc1580aa Make tag optional 2018-10-30 23:36:55 -07:00
greg 2d6c9010b9 More work here 2018-10-30 18:53:34 -07:00
greg f4ff92302f Use subpattern abstraction 2018-10-30 18:46:06 -07:00
greg e88ed97b06 Add subpattern struct 2018-10-30 18:39:25 -07:00
greg b8df09e956 Change eval strategy to use conditional sigil 2018-10-29 01:50:43 -07:00
greg d7f0147a4f Add conditional target placeholder expr 2018-10-28 12:45:45 -07:00
greg f883512882 New abstraction layer in Schala-lang parser
Just for manipulating tokens
2018-10-21 16:33:21 -07:00
greg 37070a6b3e Move pass chain generation from macro to codegen 2018-10-20 18:00:05 -07:00
greg ffe7deb00a Starting to move pass_chain logic into codegen 2018-10-20 15:54:46 -07:00
greg d7baf065fb Changing what method to call to start parsing 2018-10-20 15:41:09 -07:00
greg 6b42f8b8de Change how parsing works 2018-10-20 14:27:00 -07:00
greg d9e67a6341 Delete this old grammar file 2018-10-20 11:43:12 -07:00
greg 7de536ade0 Install failure crate 2018-10-20 11:17:18 -07:00
greg f62b4c6906 Change format of error msg 2018-10-20 11:14:40 -07:00
greg 4679a9fc7f Remove compiler warnings 2018-10-20 00:55:37 -07:00
greg c25354b2c7 Get rid of typechecking code (for now)
I'm tired of seeing the errors. See branch last_commit_with_typechecking
2018-10-20 00:41:56 -07:00
greg 5f8b842bf2 Delete newline 2018-10-20 00:22:41 -07:00
greg fef66e345b Subpattern field 2018-10-19 17:43:22 -07:00
greg e57d33eae7 More work on more patterns
-need to convert guard into a possibly-empty vec
2018-10-19 17:27:06 -07:00
greg dca9ad06c3 Handle HalfExpr closer to correct 2018-10-19 11:02:10 -07:00
greg 354148c5ba rename codegen -> chala-lang-codegen 2018-10-19 09:57:35 -07:00
greg 6219a06d6f Converted all parser methods to use the annotation 2018-10-19 02:56:11 -07:00
greg 3b20b40eb7 Proc macro generated code for parsing seems to work 2018-10-19 02:45:35 -07:00
greg 4ecf63c54d Okay the proc_macro is actually doing something
At the cost of breaking code
2018-10-19 02:36:23 -07:00
greg 3d00667caf Add test for ignored pattern 2018-10-18 15:55:24 -07:00
greg 4b9c7e38dd Rename TypeName -> TypeIdentifier 2018-10-18 13:27:09 -07:00
greg 03317233c6 Don't need this import 2018-10-18 10:31:55 -07:00
greg dff204069f Starting to implement Ignored pattern 2018-10-18 01:54:36 -07:00
greg f2282f0101 case_match_expression split out into its own method 2018-10-18 01:49:42 -07:00
greg 40ccea8c05 Separate assign_expression method 2018-10-18 01:46:30 -07:00
greg cae6f2f768 Rename schala-codegen -> schala-repl-codegen 2018-10-18 01:09:29 -07:00
greg 1be6991f55 Making eval expression method a bit less complex
by splitting it into submethods
2018-10-17 20:46:16 -07:00
greg 1b60bd38ff Add codegen crate for schala-lang 2018-10-17 15:29:32 -07:00
greg 3b20b9e209 Put schala-lang crates into a subdirectory 2018-10-17 14:51:48 -07:00
greg de0e150536 Fix if-block parsing to handle newlines 2018-10-17 13:44:29 -07:00
greg baf51fb147 Boolean patterns 2018-10-17 12:43:09 -07:00
greg dc9e493fa1 Handle more patterns at reduce_ast level 2018-10-16 17:18:03 -07:00
greg d57a8045a9 Rename test helper 2018-10-16 04:11:18 -07:00
greg 50d5176b45 Fix bug add test 2018-10-16 04:10:28 -07:00
greg 501eaeee87 Implement numeric pattern matching 2018-10-16 03:54:08 -07:00
greg 8619c94217 Start handling numeric patterns
Still need to add eval support for this
2018-10-16 01:38:41 -07:00
greg fc7c86be1a nonterminal() constructor function 2018-10-15 21:46:27 -07:00