summaryrefslogtreecommitdiffstats
path: root/txr.1
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2016-11-27 10:28:56 -0800
committerKaz Kylheku <kaz@kylheku.com>2016-11-27 10:28:56 -0800
commit02cc74a75b774dfbe5ea4b4080b7d199bb30d6ca (patch)
treec70aac25804801d8a65437cdad0cf92a9ae5935e /txr.1
parent1b8d1b67919fc2560aa7276dd17d2b9e4ace027e (diff)
downloadtxr-02cc74a75b774dfbe5ea4b4080b7d199bb30d6ca.tar.gz
txr-02cc74a75b774dfbe5ea4b4080b7d199bb30d6ca.tar.bz2
txr-02cc74a75b774dfbe5ea4b4080b7d199bb30d6ca.zip
doc: note about circular notation and hashes.
* txr.1: Document that circular notation works with eql-based hash tables, but not equal-based.
Diffstat (limited to 'txr.1')
-rw-r--r--txr.113
1 files changed, 13 insertions, 0 deletions
diff --git a/txr.1 b/txr.1
index 3c5dbc74..db749592 100644
--- a/txr.1
+++ b/txr.1
@@ -10919,6 +10919,19 @@ or lexically precedes the reference. Forward references such as
.code "(#1# #1=(1 2))"
are not supported.
+.TP* "Note:"
+Circular notation can span hash table literals. The syntax
+.code "#1=#H(() (#1# #1#))"
+denotes an
+.codn eql -based
+hash table which contains one entry, in which that
+same table itself is both the key and value. This kind of
+circularity is not supported for
+.codn equal -based
+hash tables. The analogous syntax
+.code "#1=#H((:equal-based) (#1# #1#))"
+produces a hash table in an inconsistent state.
+
.TP* "Dialect note:"
Circle notation is taken from Common Lisp,
intended to be unsurprising to users familiar with that