Commit Graph

1970 Commits

Author SHA1 Message Date
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
greg
77e0d639c2 Make repl mod structure more complex 2018-10-15 20:52:34 -07:00
greg
9927a6b1fd Implement custom interpreter directives - and a wtf?
See the comment about &mut self vs &self
2018-10-15 20:29:23 -07:00
greg
e8dfc2be34 Refactor codegen some 2018-10-15 20:14:56 -07:00
greg
abe2db25b2 full if matching working with basic patterns 2018-10-15 19:54:17 -07:00
greg
a99a5f10a4 Indicate index explicitly in SymbolTable debug 2018-10-15 19:37:02 -07:00
greg
c52bc65bb9 Change NonTerminal format 2018-10-02 01:37:43 -07:00
greg
819c422cee Start making CommandTree abstraction include implementation 2018-10-02 00:46:23 -07:00