Commit Graph

800 Commits

Author SHA1 Message Date
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
greg
6259a0808c Fix tests too 2018-02-23 01:59:53 -08:00
greg
0c69476fd0 Separate tokenizing module
Parsing was getting too long
2018-02-23 01:58:06 -08:00
greg
1caccc6ae2 Some work on binops 2018-02-23 01:49:37 -08:00
greg
23af2b1455 Some more type-checking work 2018-02-22 19:59:53 -08:00
greg
61795b0331 More work on evaluating applications
for later testing + to kill a compiler warning
2018-02-22 03:34:36 -08:00