Dylan Baker
|
83ed61e4d5
|
Move the REPL into its own class
|
6 years ago |
Dylan Baker
|
2242484bd6
|
Don't leave variables bound after function execution :(
|
6 years ago |
Dylan Baker
|
dfc72ec77b
|
Run prettier
|
6 years ago |
Dylan Baker
|
1954d89211
|
Allow recursive functions & closures
|
6 years ago |
Dylan Baker
|
1a9bdbfc52
|
Evaluate conditionals
|
6 years ago |
Dylan Baker
|
89b4f49dcb
|
Rename constant spec file
|
6 years ago |
Dylan Baker
|
b3735912f5
|
Parse conditionals
|
6 years ago |
Dylan Baker
|
8f652e87fb
|
Add comparison functions
|
6 years ago |
Dylan Baker
|
3119c4b7d1
|
Improve errors a little bit
|
6 years ago |
Dylan Baker
|
2924a9b9dc
|
Sometimes we have an AST node and sometimes we have a raw value
|
6 years ago |
Dylan Baker
|
cc51634636
|
Handle ctrl+c in repl, add exit function
|
6 years ago |
Dylan Baker
|
1cd0480079
|
Return error for unbound variable/function
|
6 years ago |
Dylan Baker
|
48b94af6f6
|
Store function name on the function node
|
6 years ago |
Dylan Baker
|
0b46e6cb5a
|
Evaluate identifier referents
|
6 years ago |
Dylan Baker
|
f34112d2c8
|
Clean up REPL
|
6 years ago |
Dylan Baker
|
616231a55b
|
Evaluate user-defined functions
|
6 years ago |
Dylan Baker
|
71b2364613
|
Parse function definitions
|
6 years ago |
Dylan Baker
|
87944658b8
|
Clean up AST tests
|
6 years ago |
Dylan Baker
|
03bc1d2184
|
Implement booleans
|
6 years ago |
Dylan Baker
|
7dae1bac04
|
Test nested expressions
|
6 years ago |
Dylan Baker
|
bd283f0913
|
Fix lexer whitespace issues
|
6 years ago |
Dylan Baker
|
8daaeacad7
|
Get REPL working
|
6 years ago |
Dylan Baker
|
dea415bdba
|
Evaluate addition
|
6 years ago |
Dylan Baker
|
2910625b1a
|
Number and string accept an environment as well
|
6 years ago |
Dylan Baker
|
39d2e2b2a9
|
Env tests
|
6 years ago |
Dylan Baker
|
88fd2818b9
|
Create core
|
6 years ago |
Dylan Baker
|
df383987bf
|
Use env in interpreter
|
6 years ago |
Dylan Baker
|
fa2699e483
|
Evaluate definition/indentifier
|
6 years ago |
Dylan Baker
|
e3ab53a63e
|
Parse definition
|
6 years ago |
Dylan Baker
|
7d4ebdb9eb
|
Create Env class
|
6 years ago |
Dylan Baker
|
f31ce80c4b
|
Evaluate strings
|
6 years ago |
Dylan Baker
|
5a23b3dee7
|
Parse strings
|
6 years ago |
Dylan Baker
|
64cc88f9a8
|
Lex strings
|
6 years ago |
Dylan Baker
|
7c02e3cfe9
|
Evaluate numbers
|
6 years ago |
Dylan Baker
|
2dfba579de
|
Parse application
|
6 years ago |
Dylan Baker
|
7b554d0095
|
Parse identifiers
|
6 years ago |
Dylan Baker
|
3d230605bf
|
Parse numbers
|
6 years ago |
Dylan Baker
|
f2495f89f7
|
Lex identifiers
|
6 years ago |
Dylan Baker
|
99b51b4193
|
Ignore whitespace
|
6 years ago |
Dylan Baker
|
84f9e00090
|
Lex numbers
|
6 years ago |
Dylan Baker
|
79c398f4b9
|
End in EOF
|
6 years ago |
Dylan Baker
|
f421c3c196
|
Scan parens
|
6 years ago |
Dylan Baker
|
d3bfd344aa
|
Initial commit
|
6 years ago |