Commit Graph

19 Commits

Author SHA1 Message Date
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
14ac02ab12 Cleaning up generated parser files. 2009-11-24 11:55:57 -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
dfc1234817 Implemented on-line help system, initial trace system, debug functions.
Rewrote REPL
Added NIL and comments to parser.
Added T as a predefined constant.
Added HELP, TRACE, ENABLE-DEBUG-AST special form.
Fixed variable evaluation (shouldn't automatically eval it's value)
2009-11-21 20:00:39 -06:00
943c91dedc Fixed function calling mechanism. 2009-11-20 13:59:40 -06:00
1642e5a51a Function lookup and calling implemented. Some SpecialForms implemented.
Special forms:
    DEFUN
    SETQ
    +
    -
    *
    /
2009-11-20 10:26:21 -06:00
f6d3658342 Safety point before changing the return type of SExp.eval to SExp 2009-11-20 09:10:21 -06:00
adc5b2d250 Continued work on List.eval, general function/macro/special form invocation. 2009-11-20 06:19:03 -06:00
1595ae1921 Re-architected SymbolTable using maps rather than sequences. 2009-11-19 10:59:14 -06:00
ebbcb87745 Initial thoughts and groundwork for scoping, activation records, and functions. 2009-11-19 09:57:41 -06:00
9a165a2131 Finished initial version of AbstractSyntax 2009-11-19 09:56:52 -06:00
577ffcdcb3 Initial commit, Parser and abstract syntax tree skeleton done. 2009-11-18 20:00:29 -06:00