# Zisp: 21st-century Scheme-inspired language Zisp is my experimental toy language inspired by Scheme. The idea is that it's a modern "re-imagining" of what Scheme may have been had it been invented today, and had it been designed with pragmatic use as a primary concern in its design. This language doesn't actually exist yet. You are merely reading the ramblings of a madman. A little bit of code is here already though: [Source code](https://git.tkammer.de/zisp/) Some of the following articles are quite insightful. Others are VERY rambly; you've been warned. Some are outdated with regards to the actual implementation of Zisp, because writing the code often gives you yet another perspective. * [Compilation is execution](notes/compile.html) * [Everything can be serialized](notes/serialize.html) * [Symbols are strings](notes/symbols.html) * [Stop the "cons" madness!](notes/cons.html) * [A little bit of syntax sugar never hurt anyone](notes/sugar.html) * [More immutability](notes/immutable.html) * [No shadowing, and fewer `let` forms](notes/let.html) * [Return zero values](notes/zero-values.html) * [Strict mode: Can't ignore returned values](notes/strict-mode.html) * [Only Booleans have truthiness](notes/booleans.html) * [Record types](notes/records.html) * [Object-oriented programming](notes/oop.html) * [Equality and equivalence semantics](notes/equal.html) * [NaN-packing](notes/nan.html) * [Reader? Decoder? I barely know 'er!](notes/reader.html) * [Does the decoder implement macros?](notes/macros.html) * [Better syntax-rules?](notes/sr.html) * [Cons cell optimization?](notes/fastcons.html) * [Using libgccjit?](notes/libgccjit.html)