Commit Graph

805 Commits

Author SHA1 Message Date
greg 60cce3fe9c Some macro simplifications 2018-03-06 01:31:31 -08:00
greg 4eb22f94d0 Trying to make tests less verbose 2018-03-06 01:06:36 -08:00
greg 355c8170a4 Added test for lambda call 2018-03-06 00:56:19 -08:00
greg e3671a579d Changed BNF grammar of call statements
To allow calling lambdas
2018-03-06 00:38:33 -08:00
greg 08ca48b2ba lambdas 2018-03-04 02:11:22 -08:00
greg fea9b9575b Print output of tuples 2018-03-03 13:26:22 -08:00
greg 276dad56d7 Handle tuple literals in type system 2018-03-03 11:55:20 -08:00
greg 695e733584 Sum types in type schema 2018-03-03 11:52:07 -08:00
greg 9bfd751db6 Kill unused import 2018-03-03 11:32:38 -08:00
greg b058e47d79 Kill some compiler warnings 2018-03-03 00:28:52 -08:00
greg 5be53dc847 Evaluator now only prints when a builtin print is called 2018-03-03 00:25:08 -08:00
greg a0bea0d55a Kill comments 2018-03-02 23:33:01 -08:00
greg 9747374e8a Fix bug in delimited macro
Had to do with bad strictness testing.
2018-03-02 22:44:17 -08:00
greg 9ab1ca28f8 Improve tokenizer debug output 2018-03-02 22:11:25 -08:00
greg 66cd51a355 Cleanup 2018-03-02 21:59:14 -08:00
greg 1056be12e7 Include line count in token debug 2018-03-02 15:21:48 -08:00
greg 48e7c0be03 Munged types to make tokenizer compile 2018-03-02 15:15:12 -08:00
greg 6e82d1207e SOme work
WIP
2018-03-02 02:57:04 -08:00
greg f0e7c9906e Fixed bug w/ lines in functions
Also improved debugging
2018-03-02 00:42:52 -08:00
greg 57c7858c87 Frame-aware lookups 2018-03-01 23:13:32 -08:00
greg a105c84943 Kill debug 2018-03-01 22:54:03 -08:00
greg 2b8d63d9cc Better debugging for types 2018-03-01 22:32:38 -08:00
greg c807c20292 Use UVars in type signatures of functions 2018-03-01 03:35:09 -08:00
greg a643c8a792 Add history saving 2018-03-01 02:49:14 -08:00
greg 69200048fa Switch to rustyline library 2018-03-01 02:43:11 -08:00
greg 55e372a670 Introduced fresh type variable method 2018-02-28 05:45:20 -08:00
greg c50626241e Continuing work 2018-02-27 03:01:05 -08:00
greg 232bec97a7 Re-added symbol table infra 2018-02-26 21:43:53 -08:00
greg ce1d967f08 Some logic for function call inferring 2018-02-26 21:28:11 -08:00
greg daa0062108 Starting on function application typechecking 2018-02-26 21:00:36 -08:00
greg 3e7c7a50b4 Move some code around 2018-02-26 19:57:46 -08:00
greg 2574a1b9c0 Function calls work 2018-02-26 19:55:27 -08:00
greg c285ee182e Temporarily disable type-erroring
and tighten some code
2018-02-26 19:16:49 -08:00
greg f7659a5598 Handle variable lookups 2018-02-26 18:23:10 -08:00
greg 1064d9993a Evaluate binding declarations 2018-02-26 18:18:42 -08:00
greg 0e3320e183 Separate Value and NamedStruct syntactic categories 2018-02-26 18:12:37 -08:00
greg 89a2be19f4 Fixed | 2018-02-26 02:27:36 -08:00
greg d9e96398a4 More operator stuff 2018-02-26 02:21:21 -08:00
greg a564ffa1ce Operator changes 2018-02-26 02:11:56 -08:00
greg b3fff100d2 Fixed tests w/ respect to binop
There's a few unnecessary conversions of &str 's to Rc<String> and back
2018-02-24 17:50:57 -08:00
greg cfd6df7ba5 Centralize data for prefix ops too 2018-02-24 17:43:26 -08:00
greg bb2e1ae27a Added type information to binop definitions
Also started centralizing precedence there too
2018-02-24 17:37:23 -08:00
greg 4333563d03 Make sigil field private 2018-02-24 14:39:45 -08:00
greg e7cabb2a79 Function evaluation work 2018-02-24 14:31:04 -08:00
greg 5da7c809b2 Give State a pointer to its parent
For function call lookups
2018-02-24 13:56:04 -08:00
greg d229a57837 Finished initial BinOp/PrefixOp 2018-02-23 19:06:37 -08:00
greg 0dd8861f83 Starting to munge BinOp types
Incomplete, doesn't yet compile
2018-02-23 04:10:00 -08:00
greg 4ab900d601 ReplState -> State
Not everythign is a repl
2018-02-23 03:07:58 -08:00
greg 501b975fb6 Move bx! macro up to mod.rs
And make use of it in parser
2018-02-23 03:04:19 -08:00
greg 83315e97ac Move anno-to-type to a method on TypeName 2018-02-23 02:30:34 -08:00