99a3601896
Fixed a bug with how Labdas evaluate their arguments.
...
Arguments should be evaluated in the calling scope, but due to the way labdas
were constructing a new symbol table, the arguments were being evaluated inside
the closure scope.
2010-04-20 11:18:09 -05:00
794467003a
Implemented NOT. Fixed SExp.NIL equality bug.
2010-02-09 14:13:30 -06:00
c754b2e7a9
LETREC tests
2009-12-01 20:05:05 -06:00
2b45af2d9c
Reworked closure calculation. Added several special forms. Bug fixes. TypeUtil
...
Not completely happy with closure calculation, but satisfied.
Added debug toString to SymbolTable
Many additional changes, see diff.
2009-11-30 20:41:08 -06:00
7f288c0878
Generalized special form argument type checking. Added <=, <, =, /=, >, >=
2009-11-25 16:18:13 -06:00
86a0e3981b
Updated build process for better cross-platform support.
2009-11-25 13:53:08 -06:00
c63b92bf41
Functions as first-class objects, lambdas implemented. Added several new SFs
2009-11-25 13:38:12 -06:00
2c0e932f89
Polished build process. Added CONS special form.
2009-11-24 11:55:02 -06:00
e6a608ee2b
Added keywords, several new special forms
2009-11-24 09:22:52 -06:00
f6d3658342
Safety point before changing the return type of SExp.eval to SExp
2009-11-20 09:10:21 -06:00
577ffcdcb3
Initial commit, Parser and abstract syntax tree skeleton done.
2009-11-18 20:00:29 -06:00