blob: c8c50248ee28f248f0f797f3ae10e5fd454683f0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# 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)
|