summaryrefslogtreecommitdiff
path: root/tests/test_evaluator.py
Commit message (Collapse)AuthorAge
* Macro expander.Owen Jacobson2017-11-14
| | | | This includes a fairly complete quasiquote system, and a complete rework of the expander.
* Compile lambdas on evaluation, not on execution.Owen Jacobson2017-11-13
| | | | This cuts down the cost of calling a function, as it now reuses an existing continuation rather than reconstructing the continuation for each call. Tail calls are now slightly more explicit.
* Big-ass coding binge presents: a Lisp.Owen Jacobson2017-11-13
This implements a continuation-passing interpreter, which means we get tail calls ferfree. I stopped short of implementing call/cc, because I don't think we need it, but we can get there if we have to.