diff --git a/doc/DRAWL.md b/doc/DRAWL.md index 4217b3e..be53c00 100644 --- a/doc/DRAWL.md +++ b/doc/DRAWL.md @@ -7,6 +7,7 @@ LISP interpreted on a bytecode VM running on a 1 MHz 6502 is going to be sssllll - The PROG feature isn't present. Programming is limited to interpreting lambda S-expressions - Number values are limited to 32 bit integers, no floating point - Deep recursion. The 6502 architecture limits recursion, so don't expect too much here +- Arrays not implemented However, the code is partitioned to allow for easy extension so some of these missing features could be implemented. @@ -26,6 +27,6 @@ Here are some links to get you started. LISP 1.5 Manual: https://archive.org/details/bitsavers_mitrlelisprammersManual2ed1985_9279667 -Video showing DRAWL in action: +Video showing DRAWL in action: https://youtu.be/wBMivg6xfSg Preconfigured PLASMA ProDOS boot floppy for DRAWL: https://github.com/dschmenk/PLASMA/blob/master/images/apple/DRAWL.po diff --git a/src/lisp/README.md b/src/lisp/README.md index 3156b34..91cf8d3 100644 --- a/src/lisp/README.md +++ b/src/lisp/README.md @@ -2,7 +2,7 @@ These are the files to implement a LISP 1.5 s-expression parser and evaluator. The PLASMA code is broken up into two modules: the core s-expression processor and the REPL environment. -s-expr.pla is the guts of the system. Some features missing from the LISP 1.5 manual include floating point numbers and PROG functions. +s-expr.pla is the guts of the system. Some features missing from the LISP 1.5 manual include floating point numbers, PROG functions and arrays. drawl.pla because this is a sslloowwww implementation of LISP, so named DRAWL in keeping with the speech theme. The file reading and REPL functions are contained here. DRAWL is meant to be extensible so adding PROG and floating point is easily possible.