summaryrefslogtreecommitdiff
path: root/src/libzisp
diff options
context:
space:
mode:
authorTaylan Kammer <taylan.kammer@gmail.com>2025-02-20 18:37:09 +0100
committerTaylan Kammer <taylan.kammer@gmail.com>2025-02-20 18:37:09 +0100
commit6a0d1875981b8f6818a73f4c9b44e6553dc13f83 (patch)
treeca89993924282dc0cc32e7665766852f59c1a112 /src/libzisp
parentab0edc69d17cd32397a4f7a059120fd6152bb138 (diff)
update
Diffstat (limited to 'src/libzisp')
-rw-r--r--src/libzisp/parser.zig12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/libzisp/parser.zig b/src/libzisp/parser.zig
index 9e70614..08f2be0 100644
--- a/src/libzisp/parser.zig
+++ b/src/libzisp/parser.zig
@@ -55,12 +55,14 @@
// A separate process called "decoding" can transform simple data structures,
// consisting of only the above types, into a richer set of Zisp data types.
//
-// For example, the decoder may turn (#hash ...) into a vector. Some runes may
-// be decoded in isolation rather than as part of a list, which is how #true and #false are implemented.
+// For example, the decoder may turn (#hash ...) into a vector, as one would
+// expect a vector literal like #(...) to work in Scheme.
//
-//It also
-// interprets common rune invocations like (#quote ...) to implement the
-// traditional quoting mechanism, but in a better way:
+// Runes may be decoded in isolation as well, rather than transforming a list
+// whose head they appear in. This is how #true and #false are implemented.
+//
+// The decoder interprets (#quote ...) to implement the traditional quoting
+// mechanism, but in a better way:
//
// Traditional quote is "unhygienic" in Scheme terms. An expressoin such as
// '(foo bar) will always be read as (quote (foo bar)) regardless of what sort