Commit Graph

76 Commits

Author SHA1 Message Date
greg
a6c86d6447 Some work 2019-10-10 17:06: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
c427646e75 Change type alias 2019-09-28 02:42:18 -07:00
greg
a054de56a2 Import statement syntax 2019-09-21 02:30:28 -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
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
greg
403b171c72 remove another meta-use 2019-09-20 01:08:00 -07:00
greg
e5a09a6ee8 Get rid of Meta use in reduce_named_struct 2019-09-19 18:38:15 -07:00
greg
e1a83b5de3 Start to use table lookups instead of Meta
For fqsn
2019-09-19 03:34:09 -07:00
greg
c9052e0a3b QualifiedName with id 2019-09-19 01:34:21 -07:00
greg
b91c3c9da5 Change design of Statement AST node 2019-09-17 02:25:11 -07:00
greg
08da787aae Make AST a struct 2019-09-11 19:25:12 -07:00
greg
a85d3c46bd Finish conversion of AST Reducer 2019-09-11 01:27:52 -07:00
greg
25f51a314d Start transitioning design of ast reduction
to method-on-struct based system
2019-09-10 09:27:33 -07:00
greg
6c3a4f907b Warning cleanup, TODOs 2019-09-10 03:40:41 -07:00
greg
1ecf1e506c Update more notes 2019-09-10 03:33:28 -07:00
greg
72944ded1b Fixed all broken tests 2019-09-10 03:31:23 -07:00
greg
5572e0eebb Make some notes about what to do next 2019-09-09 10:17:46 -07:00
greg
65bc32b033 Fixed many of the broken tests 2019-09-09 01:04:46 -07:00
greg
29f4060a71 VarOrName fix in reduced ast 2019-09-08 17:01:07 -07:00
greg
9a28ccfd85 Tests compile again 2019-09-07 19:08:50 -07:00
greg
ea542192be Temp qualified names work 2019-09-06 17:19:41 -07:00
greg
44c073320b Code builds, tests don't 2019-09-06 02:23:04 -07:00
greg
a5c9aca4d7 Halfway done with fqsn lookup pass initial work 2019-09-03 03:20:17 -07:00
greg
b4da57f5c5 Make Meta<Expression> exist everywhere it needs to 2019-09-02 14:41:09 -07:00
greg
8b87945bee Wrap remaining Expressions in Meta 2019-09-02 14:13:53 -07:00
greg
34abb9b081 Start work on qualified names 2019-08-31 23:39:01 -07:00
greg
0540df4024 Rename Val -> Sym 2019-08-30 19:10:16 -07:00
greg
063a13f7ff Move BinOp into ast subcrate
now builtins is only builtin semantics and has nothing to do with
operators
2019-08-15 06:28:40 -07:00
greg
44ae10b7ae Add todo note 2019-08-14 07:54:39 -07:00
greg
fa1544c71f Fix eval of negatives 2019-08-14 07:31:59 -07:00
greg
0dd6b26e5a Move where PrefixOp lives 2019-08-13 04:17:17 -07:00
greg
7ae41e717d Switch away from string builtins 2019-08-12 14:10:07 -07:00
greg
e750247134 Successfully constructing a record
Not yet destructing it
2019-08-12 12:46:18 -07:00
greg
a8efe40b57 Add some documentation for the reduced AST 2019-08-12 11:55:35 -07:00
greg
c9bfa2b540 More named struct reduction work 2019-08-12 11:40:16 -07:00
greg
a600d34712 More work on named struct
commented for now becuase I need to fix things in the symbol table
2019-08-12 10:59:04 -07:00
greg
3b19fc5aa9 Barest beginning of named struct implementation 2019-08-05 03:35:10 -07:00
greg
ee87695626 Simplify Alternative data structure
Most of the subfields are duplicated on Subpattern so just use that
directly
2019-07-30 01:33:09 -07:00
greg
d67ccf5c7a Refactor Expression struct
to have explicit kind and type_anno fields, to make it clearer
that this represents source-code level annotation and not any kind
of type inference intermediate product
2019-07-10 18:52:25 -07:00
greg
33c2786ea1 More complicated FormalParam type 2019-06-16 14:56:52 -07:00
greg
bc01a5ded8 Make reduced ast call handler be a separate method 2019-06-16 00:21:39 -07:00
greg
40579d80ce More work on args
not quite done
2019-06-12 03:28:46 -07:00
greg
6da6f6312d Remove more unused code 2019-05-20 22:04:14 -07:00
greg
f041cc17d2 Wrap all Expression nodes in Meta<Expression> 2019-02-21 23:35:18 -08:00
greg
b35262c444 Rename Node -> Meta 2019-02-21 01:49:15 -08:00
greg
9fa0576547 Rename ExpressionType -> ExpressionKind 2019-02-21 01:26:51 -08:00
greg
a6eb2b4020 Allow type annotations in let expressions 2019-02-20 22:44:45 -08:00