From ec3b9de737d35797db45a5ef766d62e4072ea61f Mon Sep 17 00:00:00 2001 From: David Schmenk Date: Mon, 22 Jul 2024 16:31:38 -0700 Subject: [PATCH] Update docs and images --- doc/DRAWL.md | 9 +++++++++ images/apple/DRAWL.po | Bin 143360 -> 143360 bytes 2 files changed, 9 insertions(+) diff --git a/doc/DRAWL.md b/doc/DRAWL.md index e072772..b1b6a5a 100644 --- a/doc/DRAWL.md +++ b/doc/DRAWL.md @@ -21,6 +21,7 @@ However, the code is partitioned to allow for easy extension so some of these mi - Additional testing/looping construct: IF, FOR, WHILE, UNTIL - Bit-wise logic operations on 32 bit integers - Hexadecimal input/output +- LoRes Apple II graphics The DRAWL implementation comes with the following built-in functions: @@ -49,6 +50,7 @@ The DRAWL implementation comes with the following built-in functions: - AND(...) - OR(...) - NULL() +- NUMBERP() ### Misc @@ -111,6 +113,7 @@ The DRAWL implementation comes with the following built-in functions: - <() - MIN(...) - MAX(...) +- NUMBERP() ### Integers @@ -148,6 +151,12 @@ The DRAWL implementation comes with the following built-in functions: - COMP() - ANNUITY() +### Lo-Res Graphics + +- GR() +- COLOR() +- PLOT() + LISP is one of the earliest computer languages. As such, it holds a special place in the anals of computer science. I've always wanted to learn why LISP is held in such high regard by so many, so I went about learning LISP by actually implementing a LISP interpreter in PLASMA. PLASMA is well suited to implement other languages due to its rich syntax, performance and libraries. ## Links diff --git a/images/apple/DRAWL.po b/images/apple/DRAWL.po index 5e3ec729b0fd9f503f5dc9ea7c14e9cdabd6f95a..c84c703789f9fe249db9a1fc952cb128ffb17246 100644 GIT binary patch delta 8593 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 l?yK)KKV