From 6ab96f303d547187d9e8a24f9a65326a017d095d Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Sun, 27 Nov 2016 10:28:56 -0800 Subject: doc: note about circular notation and hashes. * txr.1: Document that circular notation works with eql-based hash tables, but not equal-based. --- txr.1 | 13 +++++++++++++ 1 file changed, 13 insertions(+) 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 -- cgit v1.2.3