summaryrefslogtreecommitdiffstats
path: root/txr.1
diff options
context:
space:
mode:
Diffstat (limited to 'txr.1')
-rw-r--r--txr.122
1 files changed, 9 insertions, 13 deletions
diff --git a/txr.1 b/txr.1
index 49fe9810..93018264 100644
--- a/txr.1
+++ b/txr.1
@@ -41752,23 +41752,10 @@ has three or more arguments, they are processed from left to right.
If errors are encountered during the processing, the correct registrations
already made for prior arguments remain in place.
-It is erroneous to register a duplicate relationship. If symbol
-.code a
-is already a direct or indirect subtype of
-.code b
-then
-.code "(defex a b)"
-and
-.code "(defex a x b)"
-are erroneous.
-
Every symbol is implicitly considered to be its own exception subtype,
therefore it is erroneous to explicitly register a symbol as its
own subtype.
-The foregoing rules eliminate the possibility of creating cycles in the
-exception subtype inheritance graph.
-
The symbol
.code nil
is implicitly a subtype of every exception type. Therefore, it is erroneous
@@ -41788,6 +41775,15 @@ Using
.code t
as a supertype in a registration is also erroneous.
+A symbol
+.code a
+may not be registered as a subtype of a symbol
+.code b
+if the reverse relationship already exists between those two symbols.
+
+The foregoing rules allow redefinitions to take place, while forbidding cycles
+from being created in the exception subtype inheritance graph.
+
Keyword symbols may be used as exception types.
.coNP Function @ register-exception-subtypes