Commit Graph

1624 Commits

Author SHA1 Message Date
greg 3cf3fce72d Fixed some code in scope resolver 2019-10-10 18:33:34 -07:00
greg ddea470ba8 Parsing tests pass, eval ones fail 2019-10-10 18:17:59 -07:00
greg 745afe981a Got compilation working again 2019-10-10 17:50:20 -07:00
greg a6c86d6447 Some work 2019-10-10 17:06:41 -07:00
greg 8d3639ab8e Fix everything if-refactor-related save reduced_ast 2019-10-10 14:38:48 -07:00
greg 3bca82a8c8 Still more refactoring work 2019-10-10 10:34:54 -07:00
greg 811c52c8d3 More if-expr refactoring work
Think I finished all the parsing stuff, just need to fix the types
everywhere else
2019-10-10 03:56:35 -07:00
greg 95e278d1b5 Chunk of work on if-expr AST
don't expect this to compile yet
2019-10-10 03:29:28 -07:00
greg 61b757313d Alter grammar of if-blocks 2019-10-10 02:34:56 -07:00
greg 24b48551dc More playing around with syntax for if 2019-10-09 02:32:41 -07:00
greg 2ed84de641 Introduce bare else clause in if exprs
With a non-passing test
2019-10-09 01:50:32 -07:00
greg 22efd39114 Change if-expr syntax
use else instead of ->
2019-10-08 18:23:16 -07:00
greg a48bb61eb3 Get rid of this test
need to rethink how if-expressions should work
2019-10-05 16:41:51 -07:00
greg 904d5c4431 Add "production" line to parse debug output
And also add a .next() in the parser that should've been there
2019-10-04 03:12:09 -07:00
greg 28056b1f89 Add production name in ParseError
for debugging
2019-10-04 03:12:00 -07:00
greg f9a59838b0 Get rid of .into()'s in parser 2019-10-01 02:19:12 -07:00
greg f02d7cb924 Add test for failing if expression 2019-09-28 17:42:22 -07:00
greg 489819a28e Multiline prompt 2019-09-28 17:31:37 -07:00
greg c427646e75 Change type alias 2019-09-28 02:42:18 -07:00
greg f06b5922de Visitor cleanup 2019-09-28 02:37:36 -07:00
greg 253b5d88f0 Finish cleaning up visitor logic 2019-09-28 01:58:22 -07:00
greg f654cd6b50 Start moving all walking logic out of visitor 2019-09-28 01:01:56 -07:00
greg 89649273d8 Still more visitor stuff 2019-09-27 22:34:00 -07:00
greg 9fa4e3797c More visitor stuff 2019-09-27 09:54:24 -07:00
greg c8804eeefb More visitor stuff 2019-09-26 03:26:37 -07:00
greg d80a0036b1 Enough of ASTVisitor to test something 2019-09-26 02:29:35 -07:00
greg 7533c69c49 Add note on visitors 2019-09-26 01:32:33 -07:00
greg 39bb175722 Initial WIP code 2019-09-26 01:31:39 -07:00
greg ae65455374 Add type alias for name scope data structure 2019-09-25 03:26:31 -07:00
greg 1fc028c9fc Make lookup_name_in_scope a method 2019-09-25 03:18:54 -07:00
greg 031ff9fe7e Add top-level variable to schala prelude 2019-09-25 02:54:56 -07:00
greg 5a9f3c1850 Sort symbols in debug 2019-09-25 02:43:07 -07:00
greg 58251d3f28 Use colored in symbol table debug 2019-09-25 02:28:24 -07:00
greg 2e42313991 add_new_symbol clarification 2019-09-25 02:18:36 -07:00
greg 355604d911 Cargo.lock should be version-controlled 2019-09-25 01:54:14 -07:00
greg 0b57561114 Use block in scope resolution 2019-09-25 01:45:02 -07:00
greg dbd81ca83d names 2019-09-24 19:24:07 -07:00
greg 6368d10d92 Rename Symbol.name -> Symbol.local_name
to make it clearer what this means
2019-09-24 18:56:53 -07:00
greg 9cd64d97a5 Isolate import handling code 2019-09-24 18:42:01 -07:00
greg 41cad61e34 Start work on name resolution 2019-09-24 03:28:59 -07:00
greg a054de56a2 Import statement syntax 2019-09-21 02:30:28 -07:00
greg 603ea89b98 Start adding import keyword 2019-09-20 18:19:29 -07:00
greg 06026604cc Fix test 2019-09-20 12:14:15 -07:00
greg 03f8abac6a Remove Meta type 2019-09-20 12:03:42 -07:00
greg fd3922d866 Get rid of Meta from tests 2019-09-20 10:10:57 -07:00
greg 71b3365de2 Remove all the rest of the instances of Meta from the AST
Still need to do tests
2019-09-20 02:21:39 -07:00
greg cf9ce74394 still more meta's 2019-09-20 02:05:57 -07:00
greg f5d1c89574 Kill more Meta's 2019-09-20 02:03:10 -07:00
greg 8d1e0ebdea Start to get rid of Meta 2019-09-20 01:57:48 -07:00
greg 69c215eac9 Get rid of Meta elsewhere 2019-09-20 01:44:20 -07:00