diff options
Diffstat (limited to 'src/algebra/strap/RCAGG.lsp')
-rw-r--r-- | src/algebra/strap/RCAGG.lsp | 113 |
1 files changed, 49 insertions, 64 deletions
diff --git a/src/algebra/strap/RCAGG.lsp b/src/algebra/strap/RCAGG.lsp index 2d2d62e0..fd66583b 100644 --- a/src/algebra/strap/RCAGG.lsp +++ b/src/algebra/strap/RCAGG.lsp @@ -6,70 +6,55 @@ (DEFPARAMETER |RecursiveAggregate;AL| 'NIL) (DEFUN |RecursiveAggregate;| (|t#1|) - (PROG (#0=#:G1396) - (RETURN - (PROG1 (LETT #0# - (|sublisV| - (PAIR '(|t#1|) (LIST (|devaluate| |t#1|))) - (COND - (|RecursiveAggregate;CAT|) - ('T - (LETT |RecursiveAggregate;CAT| - (|Join| (|HomogeneousAggregate| '|t#1|) - (|mkCategory| '|domain| - '(((|children| ((|List| $) $)) - T) - ((|nodes| ((|List| $) $)) T) - ((|leaf?| ((|Boolean|) $)) - T) - ((|value| (|t#1| $)) T) - ((|elt| (|t#1| $ "value")) - T) - ((|cyclic?| ((|Boolean|) $)) - T) - ((|leaves| - ((|List| |t#1|) $)) - T) - ((|distance| - ((|Integer|) $ $)) - T) - ((|child?| - ((|Boolean|) $ $)) - (|has| |t#1| - (|SetCategory|))) - ((|node?| ((|Boolean|) $ $)) - (|has| |t#1| - (|SetCategory|))) - ((|setchildren!| - ($ $ (|List| $))) - (|has| $ - (ATTRIBUTE - |shallowlyMutable|))) - ((|setelt| - (|t#1| $ "value" |t#1|)) - (|has| $ - (ATTRIBUTE - |shallowlyMutable|))) - ((|setvalue!| - (|t#1| $ |t#1|)) - (|has| $ - (ATTRIBUTE - |shallowlyMutable|)))) - NIL - '((|List| $) (|Boolean|) - (|Integer|) (|List| |t#1|)) - NIL)) - . #1=(|RecursiveAggregate|))))) . #1#) - (|setShellEntry| #0# 0 - (LIST '|RecursiveAggregate| (|devaluate| |t#1|))))))) + (LET ((#0=#:G1396 + (|sublisV| (PAIR '(|t#1|) (LIST (|devaluate| |t#1|))) + (COND + (|RecursiveAggregate;CAT|) + ('T + (LETT |RecursiveAggregate;CAT| + (|Join| (|HomogeneousAggregate| '|t#1|) + (|mkCategory| '|domain| + '(((|children| ((|List| $) $)) T) + ((|nodes| ((|List| $) $)) T) + ((|leaf?| ((|Boolean|) $)) T) + ((|value| (|t#1| $)) T) + ((|elt| (|t#1| $ "value")) T) + ((|cyclic?| ((|Boolean|) $)) T) + ((|leaves| ((|List| |t#1|) $)) + T) + ((|distance| ((|Integer|) $ $)) + T) + ((|child?| ((|Boolean|) $ $)) + (|has| |t#1| (|SetCategory|))) + ((|node?| ((|Boolean|) $ $)) + (|has| |t#1| (|SetCategory|))) + ((|setchildren!| + ($ $ (|List| $))) + (|has| $ + (ATTRIBUTE |shallowlyMutable|))) + ((|setelt| + (|t#1| $ "value" |t#1|)) + (|has| $ + (ATTRIBUTE |shallowlyMutable|))) + ((|setvalue!| (|t#1| $ |t#1|)) + (|has| $ + (ATTRIBUTE |shallowlyMutable|)))) + NIL + '((|List| $) (|Boolean|) + (|Integer|) (|List| |t#1|)) + NIL)) + |RecursiveAggregate|)))))) + (|setShellEntry| #0# 0 + (LIST '|RecursiveAggregate| (|devaluate| |t#1|))) + #0#)) (DEFUN |RecursiveAggregate| (#0=#:G1397) - (LET (#1=#:G1398) + (LET ((#1=#:G1398 (|assoc| (|devaluate| #0#) |RecursiveAggregate;AL|))) (COND - ((SETQ #1# (|assoc| (|devaluate| #0#) |RecursiveAggregate;AL|)) - (CDR #1#)) - (T (SETQ |RecursiveAggregate;AL| - (|cons5| (CONS (|devaluate| #0#) - (SETQ #1# (|RecursiveAggregate;| #0#))) - |RecursiveAggregate;AL|)) - #1#)))) + (#1# (CDR #1#)) + (T (PROGN + (SETQ #1# (|RecursiveAggregate;| #0#)) + (SETQ |RecursiveAggregate;AL| + (|cons5| (CONS (|devaluate| #0#) #1#) + |RecursiveAggregate;AL|)) + #1#))))) |