diff options
Diffstat (limited to 'src/interp')
-rw-r--r-- | src/interp/Makefile.in | 2 | ||||
-rw-r--r-- | src/interp/Makefile.pamphlet | 2 | ||||
-rw-r--r-- | src/interp/buildom.boot | 12 | ||||
-rw-r--r-- | src/interp/macros.lisp | 4 | ||||
-rw-r--r-- | src/interp/template.boot | 2 |
5 files changed, 6 insertions, 16 deletions
diff --git a/src/interp/Makefile.in b/src/interp/Makefile.in index ef663758..50f1ae72 100644 --- a/src/interp/Makefile.in +++ b/src/interp/Makefile.in @@ -773,7 +773,7 @@ boot-pkg.$(FASLEXT): boot-pkg.lisp buildom.$(FASLEXT): buildom.boot sys-macros.$(FASLEXT) - $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< $(axiom_build_texdir)/diagrams.tex: $(axiom_src_docdir)/diagrams.tex diff --git a/src/interp/Makefile.pamphlet b/src/interp/Makefile.pamphlet index 79dc2ce1..c53776a9 100644 --- a/src/interp/Makefile.pamphlet +++ b/src/interp/Makefile.pamphlet @@ -1072,7 +1072,7 @@ boot-pkg.$(FASLEXT): boot-pkg.lisp <<warm.data.stanza>> buildom.$(FASLEXT): buildom.boot sys-macros.$(FASLEXT) - $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< <<DVI from pamphlet>> diff --git a/src/interp/buildom.boot b/src/interp/buildom.boot index d696b2bc..2e7c1988 100644 --- a/src/interp/buildom.boot +++ b/src/interp/buildom.boot @@ -67,12 +67,6 @@ $FirstParamSlot == isRecord type == type is ["Record",:.] -RecordInner args == - -- this is old and should be removed wherever it occurs - if $evalDomain then - sayBrightly '"-->> Whoops! RecordInner called from this code." - Record0 VEC2LIST args - ++ returns the code for the `n'th item recorded in a domain shell, ++ according to the old runtime system. Note that the old runtime ++ scheme is used only for the handful of constructors created @@ -82,8 +76,8 @@ oldSlotCode n == 2 * ($FirstParamSlot + n) -Record0 args == - srcArgs := [[":",first a, devaluate rest a] for a in args] +Record(:args) == + srcArgs := [[":", second a, devaluate third a] for a in args] -- if we already have this instantiation in store, just hand it back. t := lassocShiftWithFunction(srcArgs, HGET($ConstructorCache,"Record"), "domainEqualList") => @@ -101,7 +95,7 @@ Record0 args == dom.3 := ["RecordCategory",:QCDR dom.0] dom.4 := [$commonCategoryDefaults, $commonCategoryAncestors] dom.5 := nil - for i in $FirstParamSlot.. for a in args repeat dom.i := rest a + for i in $FirstParamSlot.. for a in args repeat dom.i := third a dom.($FirstParamSlot + nargs) := [function RecordEqual, :dom] dom.($FirstParamSlot + nargs + 1) := [function RecordPrint, :dom] dom.($FirstParamSlot + nargs + 2) := [function Undef, :dom] diff --git a/src/interp/macros.lisp b/src/interp/macros.lisp index 36dc31e8..b0396ed0 100644 --- a/src/interp/macros.lisp +++ b/src/interp/macros.lisp @@ -787,10 +787,6 @@ terminals and empty or at-end files. In Common Lisp, we must assume record size ;; -*- Record Structures -*- ;; -(defmacro |Record| (&rest x) - `(|Record0| (LIST ,@(COLLECT (IN Y X) - (list 'CONS (MKQ (CADR Y)) (CADDR Y)))))) - (defmacro |:| (tag expr) `(LIST '|:| ,(MKQ tag) ,expr)) diff --git a/src/interp/template.boot b/src/interp/template.boot index c0739a63..0f0cb908 100644 --- a/src/interp/template.boot +++ b/src/interp/template.boot @@ -108,7 +108,7 @@ evalSlotDomain(u,dollar) == u is ['NRTEVAL,y] => eval y u is ['QUOTE,y] => y u is ['Record,:argl] => - FUNCALL('Record0,[[tag,:evalSlotDomain(dom,dollar)] + apply('Record,[[":",tag,evalSlotDomain(dom,dollar)] for [.,tag,dom] in argl]) u is ['Union,:argl] and first argl is ['_:,.,.] => APPLY('Union,[['_:,tag,evalSlotDomain(dom,dollar)] |