diff options
-rw-r--r-- | src/interp/define.boot | 6 | ||||
-rw-r--r-- | src/interp/spad.lisp | 1 | ||||
-rw-r--r-- | src/interp/sys-globals.boot | 2 |
3 files changed, 8 insertions, 1 deletions
diff --git a/src/interp/define.boot b/src/interp/define.boot index 9063a911..2da5243b 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -2538,6 +2538,12 @@ compJoin(["Join",:argl],m,e) == compForMode: (%Form,%Mode,%Env) -> %Maybe %Triple compForMode(x,m,e) == $compForModeIfTrue: local:= true + $bootStrapMode and m = $Category => + op := opOf x + ident? op and (db := constructorDB op) => + dbConstructorKind db = "category" => [x,m,e] + nil + comp(x,m,e) comp(x,m,e) makeCategoryForm(c,e) == diff --git a/src/interp/spad.lisp b/src/interp/spad.lisp index 2f4161e5..cd69a95f 100644 --- a/src/interp/spad.lisp +++ b/src/interp/spad.lisp @@ -44,7 +44,6 @@ (defvar |$reportInstantiations| nil) (defvar |$reportEachInstantiation| nil) -(defvar |$compForModeIfTrue| nil "checked in compSymbol") (defvar |$functorForm| nil "checked in addModemap0") (defvar |$Rep| '|$Rep| "should be bound to gensym? checked in coerce") (defvar |$definition| nil "checked in DomainSubstitutionFunction") diff --git a/src/interp/sys-globals.boot b/src/interp/sys-globals.boot index 3ed63b25..825b40ce 100644 --- a/src/interp/sys-globals.boot +++ b/src/interp/sys-globals.boot @@ -361,6 +361,8 @@ $categoryPredicateList := [] $getDomainCode := nil $addForm := nil +$compForModeIfTrue := false + --% $algebraOutputStream := |