summaryrefslogtreecommitdiff
path: root/src/lisp
Commit message (Expand)AuthorAge
* altos: Escape lisp REP loop with () inputKeith Packard2017-04-09
* lisp: Fix up lisp build so projects can get ao_lisp_const.h built as neededKeith Packard2017-04-02
* altos/lisp: Not quite ready to start making it look like scheme yetKeith Packard2017-02-20
* altos/lisp: Start adding scheme symbolsKeith Packard2017-02-20
* altos/lisp: Add casts to keep the latest GCC from whingingKeith Packard2017-02-20
* altos/lisp: Tell compiler that the two lisp memory pools are alignedKeith Packard2017-02-20
* altos/lisp: Move stack recursion check after null checkKeith Packard2017-02-20
* altos/lisp: Cleanup some DBG definesKeith Packard2017-02-20
* altos/lisp: Share binary search for memory chunk between mark and moveKeith Packard2017-02-20
* altos/lisp: Add builtin 'collect'Keith Packard2017-02-20
* altos/lisp: Sort frames by atomKeith Packard2017-02-20
* altos/lisp: bounds check in move_map plus binary searchKeith Packard2017-02-20
* altos/lisp: Empty lambda body is not an errorKeith Packard2017-02-20
* altos/lisp: Use poly stashes for stacksKeith Packard2017-02-20
* altos/lisp: Make DBG settings globalKeith Packard2017-02-20
* altos/lisp: Add continuationsKeith Packard2017-02-20
* altos/lisp: have 'while' return the last body valueKeith Packard2017-02-20
* altos/lisp: Take advantage of implicit progn in ROM codeKeith Packard2017-02-20
* altos/lisp: Make lambda, cond and while all have implicit prognsKeith Packard2017-02-20
* altos/lisp: Compile ao_lisp_make_const -no-pieKeith Packard2017-02-20
* altos/lisp: Fix uninitialized values in ao_lisp_make_constKeith Packard2017-02-20
* altos/lisp: Dump globals on errorKeith Packard2017-02-20
* altos/lisp: Fix error atom name in ao_lisp_lengthKeith Packard2017-02-20
* altos/lisp: Remove some stale frame debugging checksKeith Packard2017-02-20
* altos/lisp: Eliminate compiler warning about array bounds at -O3Keith Packard2017-02-20
* altos/lisp: binary search for chunk in collectKeith Packard2017-02-20
* altos/lisp: Allow empty defun bodiesKeith Packard2017-02-20
* altos/lisp: Optimize chunk searching in collectKeith Packard2017-02-20
* altos/lisp: Add incremental collectionKeith Packard2017-02-20
* altos/lisp: Take advantage of multi-arg macros. Add more ROM funcsKeith Packard2017-02-20
* altos/lisp: Allow macro/nlambda/lexpr to have multiple argsKeith Packard2017-02-20
* altos/lisp: Do better checking for un-evaluated macros in ROMKeith Packard2017-02-20
* altos/lisp: re-use small framesKeith Packard2017-02-20
* altos/lisp: Get lambdakey and nucleo-32 building againKeith Packard2017-02-20
* altos/lisp: Evaluate macros once, then smash them into placeKeith Packard2017-02-20
* altos/lisp: Cache freed cons and stack itemsKeith Packard2017-02-20
* altos/lisp: Simplify GC a bit by only marking the head of each objectKeith Packard2017-02-20
* altos/lisp: Change GC to do moves in batches of 32Keith Packard2017-02-20
* altos/lisp: Append a CRC to the saved image to validate on restoreKeith Packard2017-02-20
* altos/lisp: Add save/restore infrastructure. Needs OS support to work.Keith Packard2017-02-20
* altos/lisp: Make sure memmove only happens once per object. Other GC fixesKeith Packard2017-02-20
* altos/lisp: Make ao_lisp_ref and ao_lisp_poly non-inlineKeith Packard2017-02-20
* altos/lisp: Share mark function for mark and moveKeith Packard2017-02-20
* altos/lisp: add length, pack, unpack and flushKeith Packard2017-02-20
* altos/lisp: Deal with memory compation in the middle of operationsKeith Packard2017-02-20
* altos/lisp: Make read() return eof atom on end of fileKeith Packard2017-02-20
* altos/lisp: use regular read-eval-print loop for make constKeith Packard2017-02-20
* altos/lisp: add progn, while, read and evalKeith Packard2017-02-20
* altos/lisp: Clean up OS integration bits, add defunKeith Packard2017-02-20
* altos/lisp: macros appear to work nowKeith Packard2017-02-20