greg
|
f7dbbddad1
|
Let and let mut syntax
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
196954326e
|
Print bare data constructor
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
3f2fff276c
|
Constructor eval
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
ebcea685f3
|
Fix looking up functions
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
3b9084810e
|
Add constructor reduced ast node; fix test
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
f1679e83b7
|
Start trying to fix tests
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
d0a0cc8209
|
Rename ast_reducing -> reduced_ast
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
27729cefdf
|
Some improvements to the thing
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
3beabf4678
|
Start eval-ing data constructors
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
0b0f6b6b50
|
Symbol table handles functions better
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
c65907388d
|
Some ADT work
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
642e9da8ee
|
Move everything symbol-table-related into a separate module
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
98cfcfc18d
|
Eval shouldn't be aware of types
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
e64861b602
|
Some eval tests
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
1673fd1cf9
|
Fix test
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
c00effcbdd
|
Add _
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
8378170fbd
|
Kill comments
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
7ab385d398
|
Bring custom ADTs to the repl
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
9fb148bb02
|
Make compile again
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
97df2fa344
|
I dunno
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
a08134a747
|
Delete old code in eval
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
3ac50f974d
|
Pass around reference to type context in evaluator
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
afc4281e7f
|
Evaluate function arguments in context before applying them
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
8d6fea942f
|
Handle function definition before use
And some other ReducedAST - Evaluation niceties
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
ac576be604
|
Trim newline in getline()
Ineffiicent but whatever
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
6bf106a1a3
|
Equality
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
44e585fca2
|
Conditionals
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
abf25d648d
|
Change repl behavior of strings
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
1f6e6d9b31
|
Tuples
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
e2703121d8
|
Kill unneeded import
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
e5b6b41422
|
Error msg
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
6c5e3dea5d
|
Assignment
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
bd8bf1945c
|
Super simple janky input
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
9e393d2753
|
Kill old type structure
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
822420a9d5
|
Add an eval test
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
e0cec8b8a6
|
print, println as builtins
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
1a84f62818
|
Kill some old code, make very_simple example print
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
b1966d7199
|
Function calling works kind of
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
fdbb21990d
|
Retrieve function from memory when called
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
6d8d2aecbd
|
Functions
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
78ba4e1ed3
|
Variable lookup
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
481afb0f87
|
Fix debugging and debug eval
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
01986e7474
|
starting bindings
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
18c8176134
|
Get rid of unneeded imports
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
2cb7d35008
|
Use EvalResult type
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
bd1eed884f
|
State type manipulations
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
67917612e6
|
Swap over eval code to new paradigm
While keeping the old code commented for reference
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
b4a16cdc55
|
Prefix ops
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
ce71254b69
|
Implement a lot more ops
|
2018-07-26 00:52:46 -07:00 |
|
greg
|
065e58f87e
|
Successfully interpreting addition
|
2018-07-26 00:52:46 -07:00 |
|