ref: 0e972198b130b4af53ac7a8547bdc265a656d45e
parent: 4c5d2bf9c16d9a2819173816686e85c2f5844908
author: Sigrid Solveig Haflínudóttir <sigrid@ftrv.se>
date: Thu Apr 17 00:15:06 EDT 2025
readme: put fancy features first
--- a/README.md
+++ b/README.md
@@ -23,17 +23,19 @@
Some of the changes from the original include:
- * aggressive clean up, removal, renaming and refactoring
+ * aggressive refactoring
* bignums
+ * `defstruct`
+ * `T` instead of `#t`/`#T` and `NIL` instead of `#f`
+ * *supplied-p*: `(def (f (x 0 x-supplied) ...)`
+ * `c***r` of empty list returns empty list
+ * automatic gensyms for macros (`blah#`) at read time
* previously available (but not merged) patches from the community and [Julia](https://github.com/JuliaLang/julia) are applied
* `[` and `]`, `{` and `}` are synonyms to `(` and `)`
* `«` and `»` for verbatim strings
* `define` → `def`, `define-macro` → `defmacro`
* `λ` as a shorthand for `lambda`
- * `T` instead of `#t`/`#T` and `NIL` instead of `#f`
- * `c***r` of empty list returns empty list
* docstrings - `(def (f ...) "Docs here" ...)` and `(help ...)`
- * automatic gensyms for macros (`blah#`) at read time
* proper `(void)` and `void?`
* better error reporting - disassembly at the current instruction, location of syntax errors
* "boot" image is built into the executable