diff options
Diffstat (limited to 'src/interp')
54 files changed, 826 insertions, 779 deletions
diff --git a/src/interp/Makefile.in b/src/interp/Makefile.in index fc51a361..fe8f7a2a 100644 --- a/src/interp/Makefile.in +++ b/src/interp/Makefile.in @@ -12,13 +12,12 @@ autoload_objects = # derived Lisp images (interpsys, AXIOMsys) LISPSYS= $(axiom_build_bindir)/lisp -BOOTSYS= $(axiom_build_bindir)/bootsys +BOOTSYS= $(axiom_build_bindir)/bootsys -- --syslib=$(axiom_target_libdir) -LOADSYS= $(axiom_build_bindir)/lisp$(EXEEXT) SAVESYS= interpsys$(EXEEXT) AXIOMSYS= $(axiom_target_bindir)/AXIOMsys$(EXEEXT) -OBJS= sys-os.$(FASLEXT) \ +OBJS= types.$(FASLEXT) sys-os.$(FASLEXT) \ vmlisp.$(FASLEXT) hash.$(FASLEXT) \ diagnostics.$(FASLEXT) sys-driver.$(FASLEXT) \ sys-utility.$(FASLEXT) macros.$(FASLEXT) \ @@ -198,7 +197,6 @@ makeint.lisp: ${OBJS} util.$(FASLEXT) \ ${OUTINTERP} obey.$(FASLEXT) \ database.date ${INOBJS} ${ASCOMP} ${ASAUTO} \ ${TRANOBJS} \ - ${LOADSYS} \ $(axiom_targetdir)/algebra/exposed.$(FASLEXT) \ $(axiom_src_docdir)/msgs/s2-us.msgs \ ../algebra/warm.data @@ -226,7 +224,7 @@ makeint.lisp: ${OBJS} util.$(FASLEXT) \ @ echo '#+:GCL (gbc t)' >> makeint.lisp ${SAVESYS}: makeint.lisp - $(LOADSYS) -- --system="$(AXIOM)/" \ + $(BOOTSYS) -- --system="$(AXIOM)/" \ --sysalg="$(axiom_src_datadir)/algebra/" \ --make --output=$@ --main="BOOT::|restart|" \ --load-directory=. makeint.lisp @@ -237,7 +235,7 @@ ${SAVESYS}: makeint.lisp all-axiomsys: ${AXIOMSYS} ${AXIOMSYS}: makeint.lisp - $(LOADSYS) -- \ + $(BOOTSYS) -- \ --system="$(AXIOM)/" \ --sysalg="$(axiom_targetdir)/algebra/" \ --make --output=$@ --main="BOOT::|restart|" \ @@ -250,7 +248,7 @@ exposed.lsp: $(axiom_src_algdir)/exposed.lsp.pamphlet $(axiom_targetdir)/algebra/exposed.$(FASLEXT) : exposed.lsp ${LISPSYS} @ echo 616 making $@ from exposed.lsp $(mkinstalldirs) $(axiom_targetdir)/algebra - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< database.date: @ echo 617 the database was updated...remaking interpsys @@ -265,231 +263,231 @@ $(AUTO)/%.$(FASLEXT): %.$(FASLEXT) ## Translation to Fortran fortcall.$(FASLEXT): fortcall.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## HyperDoc topics.$(FASLEXT): topics.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< alql.$(FASLEXT): alql.boot br-search.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< br-search.$(FASLEXT): br-search.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-saturn.$(FASLEXT): br-saturn.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-op2.$(FASLEXT): br-op2.boot br-op1.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-op1.$(FASLEXT): br-op1.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-con.$(FASLEXT): br-con.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-prof.$(FASLEXT): br-prof.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< br-data.$(FASLEXT): br-data.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-util.$(FASLEXT): br-util.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bc-solve.$(FASLEXT): bc-solve.boot bc-matrix.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bc-matrix.$(FASLEXT): bc-matrix.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bc-misc.$(FASLEXT): bc-misc.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bc-util.$(FASLEXT): bc-util.boot ht-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ht-root.$(FASLEXT): ht-root.boot ht-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< htcheck.$(FASLEXT): htcheck.boot sys-driver.$(FASLEXT) macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ht-util.$(FASLEXT): ht-util.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< htsetvar.$(FASLEXT): htsetvar.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< -hypertex.$(FASLEXT): hypertex.boot boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< +hypertex.$(FASLEXT): hypertex.boot types.$(FASLEXT) + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## OpenAxiom's interpreter. patches.$(FASLEXT): patches.lisp macros.$(FASLEXT) sockio.$(FASLEXT) \ g-timer.$(FASLEXT) sys-driver.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< setvars.$(FASLEXT): setvars.boot macros.$(FASLEXT) debug.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< profile.$(FASLEXT): profile.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< rulesets.$(FASLEXT): rulesets.boot vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< osyscmd.$(FASLEXT): osyscmd.boot int-top.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< int-top.$(FASLEXT): int-top.boot incl.$(FASLEXT) i-toplev.$(FASLEXT) \ unlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< i-toplev.$(FASLEXT): i-toplev.boot i-analy.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-syscmd.$(FASLEXT): i-syscmd.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-output.$(FASLEXT): i-output.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-spec2.$(FASLEXT): i-spec2.boot i-spec1.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-spec1.$(FASLEXT): i-spec1.boot i-analy.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-funsel.$(FASLEXT): i-funsel.boot i-coerfn.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-map.$(FASLEXT): i-map.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-eval.$(FASLEXT): i-eval.boot i-analy.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-coerfn.$(FASLEXT): i-coerfn.boot i-coerce.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-coerce.$(FASLEXT): i-coerce.boot i-analy.$(FASLEXT) i-resolv.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-resolv.$(FASLEXT): i-resolv.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-analy.$(FASLEXT): i-analy.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-intern.$(FASLEXT): i-intern.boot i-object.$(FASLEXT) ptrees.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-code.$(FASLEXT): i-code.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-object.$(FASLEXT): i-object.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-util.$(FASLEXT): i-util.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< format.$(FASLEXT): format.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< match.$(FASLEXT): match.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< record.$(FASLEXT): record.boot nlib.$(FASLEXT) pathname.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< setvart.$(FASLEXT): setvart.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## OpenAxiom's compiler wi2.$(FASLEXT): wi2.boot macros.$(FASLEXT) define.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< wi1.$(FASLEXT): wi1.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< apply.$(FASLEXT): apply.boot compiler.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< compiler.$(FASLEXT): compiler.boot c-util.$(FASLEXT) modemap.$(FASLEXT) \ pathname.$(FASLEXT) define.$(FASLEXT) iterator.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nrunopt.$(FASLEXT): nrunopt.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nrunfast.$(FASLEXT): nrunfast.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nruncomp.$(FASLEXT): nruncomp.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nrungo.$(FASLEXT): nrungo.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nruntime.$(FASLEXT): nruntime.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< template.$(FASLEXT): template.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< iterator.$(FASLEXT): iterator.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< define.$(FASLEXT): define.boot cattable.$(FASLEXT) category.$(FASLEXT) \ c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< package.$(FASLEXT): package.boot clam.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< database.$(FASLEXT): database.boot clam.$(FASLEXT) nlib.$(FASLEXT) \ cattable.$(FASLEXT) compat.$(FASLEXT) g-cndata.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< functor.$(FASLEXT): functor.boot category.$(FASLEXT) c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< category.$(FASLEXT): category.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< cattable.$(FASLEXT): cattable.boot simpbool.$(FASLEXT) g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< compat.$(FASLEXT): compat.boot pathname.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< simpbool.$(FASLEXT): simpbool.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< newfort.$(FASLEXT): newfort.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< lisplib.$(FASLEXT): lisplib.boot nlib.$(FASLEXT) c-util.$(FASLEXT) \ debug.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< interop.$(FASLEXT): interop.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< c-doc.$(FASLEXT): c-doc.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## Interface with the Aldor compiler. ax.$(FASLEXT): ax.boot as.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< as.$(FASLEXT): as.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< server.$(FASLEXT): server.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## ## OpenAxiom's front-end consists of two parts: @@ -509,50 +507,50 @@ server.$(FASLEXT): server.boot macros.$(FASLEXT) ## spad-parser.$(FASLEXT): spad-parser.boot parse.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< mark.$(FASLEXT): mark.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< parse.$(FASLEXT): parse.boot metalex.$(FASLEXT) postpar.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< packtran.$(FASLEXT): packtran.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< postpar.$(FASLEXT): postpar.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bootlex.$(FASLEXT): bootlex.lisp preparse.$(FASLEXT) def.$(FASLEXT) \ nlib.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< newaux.$(FASLEXT): newaux.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< def.$(FASLEXT): def.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< comp.$(FASLEXT): comp.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< preparse.$(FASLEXT): preparse.lisp fnewmeta.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< fnewmeta.$(FASLEXT): fnewmeta.lisp parsing.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< parsing.$(FASLEXT): parsing.lisp metalex.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< metalex.$(FASLEXT): metalex.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< nlib.$(FASLEXT): nlib.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< macros.$(FASLEXT): macros.lisp sys-macros.$(FASLEXT) sys-utility.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< ## The new parser component roughtly is: ## astr.boot dq.boot incl.boot pile.boot ptrees.boot @@ -560,211 +558,214 @@ macros.$(FASLEXT): macros.lisp sys-macros.$(FASLEXT) sys-utility.$(FASLEXT) ## i-parser.$(FASLEXT): i-parser.boot cparse.$(FASLEXT) pf2sex.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< pf2sex.$(FASLEXT): pf2sex.boot ptrees.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< cparse.$(FASLEXT): cparse.boot ptrees.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< macex.$(FASLEXT): macex.boot ptrees.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< ptrees.$(FASLEXT): ptrees.boot posit.$(FASLEXT) serror.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< pile.$(FASLEXT): pile.boot scan.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< scan.$(FASLEXT): scan.boot incl.$(FASLEXT) bits.$(FASLEXT) dq.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< incl.$(FASLEXT): incl.boot cstream.$(FASLEXT) cformat.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< cformat.$(FASLEXT): cformat.boot unlisp.$(FASLEXT) posit.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< serror.$(FASLEXT): serror.boot posit.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< unlisp.$(FASLEXT): unlisp.lisp sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< posit.$(FASLEXT): posit.boot sys-macros.$(FASLEXT) astr.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< intfile.$(FASLEXT): intfile.boot cstream.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< cstream.$(FASLEXT): cstream.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< astr.$(FASLEXT): astr.boot vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bits.$(FASLEXT): bits.lisp boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< -dq.$(FASLEXT): dq.boot boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< +dq.$(FASLEXT): dq.boot types.$(FASLEXT) + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## General support and utilities. cfuns.$(FASLEXT): cfuns.lisp boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< obey.$(FASLEXT): obey.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< daase.$(FASLEXT): daase.lisp macros.$(FASLEXT) foam_l.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< spaderror.$(FASLEXT): spaderror.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< debug.$(FASLEXT): debug.lisp macros.$(FASLEXT) parsing.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< spad.$(FASLEXT): spad.lisp bootlex.$(FASLEXT) postpar.$(FASLEXT) \ debug.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< monitor.$(FASLEXT): monitor.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< property.$(FASLEXT): property.lisp sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< nspadaux.$(FASLEXT): nspadaux.lisp sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sfsfun-l.$(FASLEXT): sfsfun-l.lisp sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< trace.$(FASLEXT): trace.boot debug.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< termrw.$(FASLEXT): termrw.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< showimp.$(FASLEXT): showimp.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sfsfun.$(FASLEXT): sfsfun.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< modemap.$(FASLEXT): modemap.boot c-util.$(FASLEXT) info.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< info.$(FASLEXT): info.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< slam.$(FASLEXT): slam.boot g-timer.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< clammed.$(FASLEXT): clammed.boot g-timer.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< clam.$(FASLEXT): clam.boot g-timer.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-opt.$(FASLEXT): g-opt.boot def.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-timer.$(FASLEXT): g-timer.boot macros.$(FASLEXT) g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< msgdb.$(FASLEXT): msgdb.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-boot.$(FASLEXT): g-boot.boot def.$(FASLEXT) g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-error.$(FASLEXT): g-error.boot diagnostics.$(FASLEXT) g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< c-util.$(FASLEXT): c-util.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< pathname.$(FASLEXT): pathname.boot nlib.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< hashcode.$(FASLEXT): hashcode.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< pspad2.$(FASLEXT): pspad2.boot pspad1.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< pspad1.$(FASLEXT): pspad1.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< g-util.$(FASLEXT): g-util.boot macros.$(FASLEXT) sys-utility.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-cndata.$(FASLEXT): g-cndata.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< compress.$(FASLEXT): compress.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< msg.$(FASLEXT): msg.boot sys-macros.$(FASLEXT) astr.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< util.$(FASLEXT): util.lisp parsing.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< fname.$(FASLEXT): fname.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sys-macros.$(FASLEXT): sys-macros.lisp diagnostics.$(FASLEXT) \ union.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< diagnostics.$(FASLEXT): diagnostics.boot sys-constants.$(FASLEXT) \ sys-globals.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< -sys-driver.$(FASLEXT): sys-driver.boot boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< +sys-driver.$(FASLEXT): sys-driver.boot types.$(FASLEXT) + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sys-globals.$(FASLEXT): sys-globals.boot sys-constants.$(FASLEXT) \ hash.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< -sys-constants.$(FASLEXT): sys-constants.boot boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< +sys-constants.$(FASLEXT): sys-constants.boot types.$(FASLEXT) + $(BOOTSYS) --compile --output=$@ --load-directory=. $< hash.$(FASLEXT): hash.lisp vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< union.$(FASLEXT): union.lisp vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< ggreater.$(FASLEXT): ggreater.lisp vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< axext_l.$(FASLEXT): axext_l.lisp foam_l.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< foam_l.$(FASLEXT): foam_l.lisp vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sys-utility.$(FASLEXT): sys-utility.boot vmlisp.$(FASLEXT) sys-os.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< vmlisp.$(FASLEXT): vmlisp.lisp boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< -sys-os.$(FASLEXT): sys-os.boot boot-pkg.$(FASLEXT) \ +sys-os.$(FASLEXT): sys-os.boot types.$(FASLEXT) \ cfuns.$(FASLEXT) sockio.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sockio.$(FASLEXT): sockio.lisp boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< + +types.$(FASLEXT): types.boot boot-pkg.$(FASLEXT) + $(BOOTSYS) --compile --output=$@ --load-directory=. $< boot-pkg.$(FASLEXT): boot-pkg.lisp - $(BOOTSYS) -- --compile --output=$@ $< + $(BOOTSYS) --compile --output=$@ $< ../algebra/warm.data: $(srcdir)/Makefile.pamphlet @ echo 2 building warm.data @@ -772,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 --boot="old" --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 d90814aa..d4a82cee 100644 --- a/src/interp/Makefile.pamphlet +++ b/src/interp/Makefile.pamphlet @@ -76,40 +76,27 @@ itself to bootstrap the system). This image is assumed to have been built (on the build platform) by a previous step in the make process. <<environment>>= -BOOTSYS= $(axiom_build_bindir)/bootsys +BOOTSYS= $(axiom_build_bindir)/bootsys -- --syslib=$(axiom_target_libdir) @ -Once we've compile all of the Common Lisp files we fire up -a clean lisp image called {\bf LOADSYS} (from the build platform), load all -of the -final executable code and save it out as {\bf SAVESYS}. This image -is used to bootstrap the Algebra files and generate the -databases. The {\bf SAVESYS} image is copied to the [[$(axiom_target_bindir)]] subdirectory and becomes the axiom executable image. Technically, that is not right because the host plaform may not be the same as the build platform. However, we don't yet support cross compilation, so that is alright for the time being. <<environment>>= -LOADSYS= $(axiom_build_bindir)/lisp$(EXEEXT) SAVESYS= interpsys$(EXEEXT) AXIOMSYS= $(axiom_target_bindir)/AXIOMsys$(EXEEXT) @ -These are the files that need to be compiled (in {\bf BOOTSYS}), -loaded into a clean lisp image ({\bf LOADSYS}) and saved as -a runnable \Tool{OpenAxiom} interpreter ({\bf SAVESYS}) usually named -\Tool{interpsys}. Most of these files -are translated from Boot to Common Lisp and then -compiled. \subsection{The Spad interpreter and compiler} <<environment>>= -OBJS= sys-os.$(FASLEXT) \ +OBJS= types.$(FASLEXT) sys-os.$(FASLEXT) \ vmlisp.$(FASLEXT) hash.$(FASLEXT) \ diagnostics.$(FASLEXT) sys-driver.$(FASLEXT) \ sys-utility.$(FASLEXT) macros.$(FASLEXT) \ @@ -415,7 +402,6 @@ makeint.lisp: ${OBJS} util.$(FASLEXT) \ ${OUTINTERP} obey.$(FASLEXT) \ database.date ${INOBJS} ${ASCOMP} ${ASAUTO} \ ${TRANOBJS} \ - ${LOADSYS} \ $(axiom_targetdir)/algebra/exposed.$(FASLEXT) \ $(axiom_src_docdir)/msgs/s2-us.msgs \ ../algebra/warm.data @@ -443,7 +429,7 @@ makeint.lisp: ${OBJS} util.$(FASLEXT) \ @ echo '#+:GCL (gbc t)' >> makeint.lisp ${SAVESYS}: makeint.lisp - $(LOADSYS) -- --system="$(AXIOM)/" \ + $(BOOTSYS) -- --system="$(AXIOM)/" \ --sysalg="$(axiom_src_datadir)/algebra/" \ --make --output=$@ --main="BOOT::|restart|" \ --load-directory=. makeint.lisp @@ -464,7 +450,7 @@ are re-generated after leaving \File{interp/} directory. all-axiomsys: ${AXIOMSYS} ${AXIOMSYS}: makeint.lisp - $(LOADSYS) -- \ + $(BOOTSYS) -- \ --system="$(AXIOM)/" \ --sysalg="$(axiom_targetdir)/algebra/" \ --make --output=$@ --main="BOOT::|restart|" \ @@ -515,7 +501,7 @@ exposed.lsp: $(axiom_src_algdir)/exposed.lsp.pamphlet $(axiom_targetdir)/algebra/exposed.$(FASLEXT) : exposed.lsp ${LISPSYS} @ echo 616 making $@ from exposed.lsp $(mkinstalldirs) $(axiom_targetdir)/algebra - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< database.date: @ echo 617 the database was updated...remaking interpsys @@ -579,231 +565,231 @@ $(AUTO)/%.$(FASLEXT): %.$(FASLEXT) ## Translation to Fortran fortcall.$(FASLEXT): fortcall.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## HyperDoc topics.$(FASLEXT): topics.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< alql.$(FASLEXT): alql.boot br-search.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< br-search.$(FASLEXT): br-search.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-saturn.$(FASLEXT): br-saturn.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-op2.$(FASLEXT): br-op2.boot br-op1.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-op1.$(FASLEXT): br-op1.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-con.$(FASLEXT): br-con.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-prof.$(FASLEXT): br-prof.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< br-data.$(FASLEXT): br-data.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< br-util.$(FASLEXT): br-util.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bc-solve.$(FASLEXT): bc-solve.boot bc-matrix.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bc-matrix.$(FASLEXT): bc-matrix.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bc-misc.$(FASLEXT): bc-misc.boot bc-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bc-util.$(FASLEXT): bc-util.boot ht-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ht-root.$(FASLEXT): ht-root.boot ht-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< htcheck.$(FASLEXT): htcheck.boot sys-driver.$(FASLEXT) macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ht-util.$(FASLEXT): ht-util.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< htsetvar.$(FASLEXT): htsetvar.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< -hypertex.$(FASLEXT): hypertex.boot boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< +hypertex.$(FASLEXT): hypertex.boot types.$(FASLEXT) + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## OpenAxiom's interpreter. patches.$(FASLEXT): patches.lisp macros.$(FASLEXT) sockio.$(FASLEXT) \ g-timer.$(FASLEXT) sys-driver.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< setvars.$(FASLEXT): setvars.boot macros.$(FASLEXT) debug.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< profile.$(FASLEXT): profile.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< rulesets.$(FASLEXT): rulesets.boot vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< osyscmd.$(FASLEXT): osyscmd.boot int-top.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< int-top.$(FASLEXT): int-top.boot incl.$(FASLEXT) i-toplev.$(FASLEXT) \ unlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< i-toplev.$(FASLEXT): i-toplev.boot i-analy.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-syscmd.$(FASLEXT): i-syscmd.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-output.$(FASLEXT): i-output.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-spec2.$(FASLEXT): i-spec2.boot i-spec1.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-spec1.$(FASLEXT): i-spec1.boot i-analy.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-funsel.$(FASLEXT): i-funsel.boot i-coerfn.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-map.$(FASLEXT): i-map.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-eval.$(FASLEXT): i-eval.boot i-analy.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-coerfn.$(FASLEXT): i-coerfn.boot i-coerce.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-coerce.$(FASLEXT): i-coerce.boot i-analy.$(FASLEXT) i-resolv.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-resolv.$(FASLEXT): i-resolv.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-analy.$(FASLEXT): i-analy.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-intern.$(FASLEXT): i-intern.boot i-object.$(FASLEXT) ptrees.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-code.$(FASLEXT): i-code.boot i-object.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-object.$(FASLEXT): i-object.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< i-util.$(FASLEXT): i-util.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< format.$(FASLEXT): format.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< match.$(FASLEXT): match.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< record.$(FASLEXT): record.boot nlib.$(FASLEXT) pathname.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< setvart.$(FASLEXT): setvart.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## OpenAxiom's compiler wi2.$(FASLEXT): wi2.boot macros.$(FASLEXT) define.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< wi1.$(FASLEXT): wi1.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< apply.$(FASLEXT): apply.boot compiler.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< compiler.$(FASLEXT): compiler.boot c-util.$(FASLEXT) modemap.$(FASLEXT) \ pathname.$(FASLEXT) define.$(FASLEXT) iterator.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nrunopt.$(FASLEXT): nrunopt.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nrunfast.$(FASLEXT): nrunfast.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nruncomp.$(FASLEXT): nruncomp.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nrungo.$(FASLEXT): nrungo.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< nruntime.$(FASLEXT): nruntime.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< template.$(FASLEXT): template.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< iterator.$(FASLEXT): iterator.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< define.$(FASLEXT): define.boot cattable.$(FASLEXT) category.$(FASLEXT) \ c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< package.$(FASLEXT): package.boot clam.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< database.$(FASLEXT): database.boot clam.$(FASLEXT) nlib.$(FASLEXT) \ cattable.$(FASLEXT) compat.$(FASLEXT) g-cndata.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< functor.$(FASLEXT): functor.boot category.$(FASLEXT) c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< category.$(FASLEXT): category.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< cattable.$(FASLEXT): cattable.boot simpbool.$(FASLEXT) g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< compat.$(FASLEXT): compat.boot pathname.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< simpbool.$(FASLEXT): simpbool.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< newfort.$(FASLEXT): newfort.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< lisplib.$(FASLEXT): lisplib.boot nlib.$(FASLEXT) c-util.$(FASLEXT) \ debug.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< interop.$(FASLEXT): interop.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< c-doc.$(FASLEXT): c-doc.boot c-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## Interface with the Aldor compiler. ax.$(FASLEXT): ax.boot as.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< as.$(FASLEXT): as.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< server.$(FASLEXT): server.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## ## OpenAxiom's front-end consists of two parts: @@ -823,50 +809,50 @@ server.$(FASLEXT): server.boot macros.$(FASLEXT) ## spad-parser.$(FASLEXT): spad-parser.boot parse.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< mark.$(FASLEXT): mark.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< parse.$(FASLEXT): parse.boot metalex.$(FASLEXT) postpar.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< packtran.$(FASLEXT): packtran.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< postpar.$(FASLEXT): postpar.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bootlex.$(FASLEXT): bootlex.lisp preparse.$(FASLEXT) def.$(FASLEXT) \ nlib.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< newaux.$(FASLEXT): newaux.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< def.$(FASLEXT): def.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< comp.$(FASLEXT): comp.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< preparse.$(FASLEXT): preparse.lisp fnewmeta.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< fnewmeta.$(FASLEXT): fnewmeta.lisp parsing.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< parsing.$(FASLEXT): parsing.lisp metalex.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< metalex.$(FASLEXT): metalex.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< nlib.$(FASLEXT): nlib.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< macros.$(FASLEXT): macros.lisp sys-macros.$(FASLEXT) sys-utility.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< ## The new parser component roughtly is: ## astr.boot dq.boot incl.boot pile.boot ptrees.boot @@ -874,216 +860,219 @@ macros.$(FASLEXT): macros.lisp sys-macros.$(FASLEXT) sys-utility.$(FASLEXT) ## i-parser.$(FASLEXT): i-parser.boot cparse.$(FASLEXT) pf2sex.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< pf2sex.$(FASLEXT): pf2sex.boot ptrees.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< cparse.$(FASLEXT): cparse.boot ptrees.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< macex.$(FASLEXT): macex.boot ptrees.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< ptrees.$(FASLEXT): ptrees.boot posit.$(FASLEXT) serror.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< pile.$(FASLEXT): pile.boot scan.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< scan.$(FASLEXT): scan.boot incl.$(FASLEXT) bits.$(FASLEXT) dq.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< incl.$(FASLEXT): incl.boot cstream.$(FASLEXT) cformat.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< cformat.$(FASLEXT): cformat.boot unlisp.$(FASLEXT) posit.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< serror.$(FASLEXT): serror.boot posit.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< unlisp.$(FASLEXT): unlisp.lisp sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< posit.$(FASLEXT): posit.boot sys-macros.$(FASLEXT) astr.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< intfile.$(FASLEXT): intfile.boot cstream.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< cstream.$(FASLEXT): cstream.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< astr.$(FASLEXT): astr.boot vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< bits.$(FASLEXT): bits.lisp boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< -dq.$(FASLEXT): dq.boot boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< +dq.$(FASLEXT): dq.boot types.$(FASLEXT) + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< ## General support and utilities. cfuns.$(FASLEXT): cfuns.lisp boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< obey.$(FASLEXT): obey.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< daase.$(FASLEXT): daase.lisp macros.$(FASLEXT) foam_l.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< spaderror.$(FASLEXT): spaderror.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< debug.$(FASLEXT): debug.lisp macros.$(FASLEXT) parsing.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< spad.$(FASLEXT): spad.lisp bootlex.$(FASLEXT) postpar.$(FASLEXT) \ debug.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< monitor.$(FASLEXT): monitor.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< property.$(FASLEXT): property.lisp sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< nspadaux.$(FASLEXT): nspadaux.lisp sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sfsfun-l.$(FASLEXT): sfsfun-l.lisp sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< trace.$(FASLEXT): trace.boot debug.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< termrw.$(FASLEXT): termrw.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< showimp.$(FASLEXT): showimp.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sfsfun.$(FASLEXT): sfsfun.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< modemap.$(FASLEXT): modemap.boot c-util.$(FASLEXT) info.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< info.$(FASLEXT): info.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< slam.$(FASLEXT): slam.boot g-timer.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< clammed.$(FASLEXT): clammed.boot g-timer.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< clam.$(FASLEXT): clam.boot g-timer.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-opt.$(FASLEXT): g-opt.boot def.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-timer.$(FASLEXT): g-timer.boot macros.$(FASLEXT) g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< msgdb.$(FASLEXT): msgdb.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-boot.$(FASLEXT): g-boot.boot def.$(FASLEXT) g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-error.$(FASLEXT): g-error.boot diagnostics.$(FASLEXT) g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< c-util.$(FASLEXT): c-util.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< pathname.$(FASLEXT): pathname.boot nlib.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< hashcode.$(FASLEXT): hashcode.boot g-util.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< pspad2.$(FASLEXT): pspad2.boot pspad1.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< pspad1.$(FASLEXT): pspad1.boot macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< g-util.$(FASLEXT): g-util.boot macros.$(FASLEXT) sys-utility.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< g-cndata.$(FASLEXT): g-cndata.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< compress.$(FASLEXT): compress.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< msg.$(FASLEXT): msg.boot sys-macros.$(FASLEXT) astr.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< util.$(FASLEXT): util.lisp parsing.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< fname.$(FASLEXT): fname.lisp macros.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sys-macros.$(FASLEXT): sys-macros.lisp diagnostics.$(FASLEXT) \ union.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< diagnostics.$(FASLEXT): diagnostics.boot sys-constants.$(FASLEXT) \ sys-globals.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< -sys-driver.$(FASLEXT): sys-driver.boot boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< +sys-driver.$(FASLEXT): sys-driver.boot types.$(FASLEXT) + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sys-globals.$(FASLEXT): sys-globals.boot sys-constants.$(FASLEXT) \ hash.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< -sys-constants.$(FASLEXT): sys-constants.boot boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< +sys-constants.$(FASLEXT): sys-constants.boot types.$(FASLEXT) + $(BOOTSYS) --compile --output=$@ --load-directory=. $< hash.$(FASLEXT): hash.lisp vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< union.$(FASLEXT): union.lisp vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< ggreater.$(FASLEXT): ggreater.lisp vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< axext_l.$(FASLEXT): axext_l.lisp foam_l.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< foam_l.$(FASLEXT): foam_l.lisp vmlisp.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sys-utility.$(FASLEXT): sys-utility.boot vmlisp.$(FASLEXT) sys-os.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< vmlisp.$(FASLEXT): vmlisp.lisp boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< -sys-os.$(FASLEXT): sys-os.boot boot-pkg.$(FASLEXT) \ +sys-os.$(FASLEXT): sys-os.boot types.$(FASLEXT) \ cfuns.$(FASLEXT) sockio.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< sockio.$(FASLEXT): sockio.lisp boot-pkg.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --output=$@ --load-directory=. $< + +types.$(FASLEXT): types.boot boot-pkg.$(FASLEXT) + $(BOOTSYS) --compile --output=$@ --load-directory=. $< boot-pkg.$(FASLEXT): boot-pkg.lisp - $(BOOTSYS) -- --compile --output=$@ $< + $(BOOTSYS) --compile --output=$@ $< <<warm.data.stanza>> buildom.$(FASLEXT): buildom.boot sys-macros.$(FASLEXT) - $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $< + $(BOOTSYS) --compile --boot="old" --output=$@ --load-directory=. $< <<DVI from pamphlet>> diff --git a/src/interp/bc-misc.boot b/src/interp/bc-misc.boot index 8ef492b3..e5e1bb3b 100644 --- a/src/interp/bc-misc.boot +++ b/src/interp/bc-misc.boot @@ -672,7 +672,8 @@ bcTaylorSeries(a,b) == (doneButton "Continue" bcTaylorSeriesGen)) htShowPage() -bcSeriesByFormulaGen htPage == bcNotReady() +bcSeriesByFormulaGen htPage == + bcNotReady htPage bcLaurentSeries(a,b) == htInitPage('"Laurent Series Basic Command",nil) diff --git a/src/interp/boot-pkg.lisp b/src/interp/boot-pkg.lisp index 12d8915c..1454ba18 100644 --- a/src/interp/boot-pkg.lisp +++ b/src/interp/boot-pkg.lisp @@ -1,4 +1,4 @@ -;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. ;; All rights reserved. ;; Copyright (C) 2007-2008, Gabriel Dos Reis. ;; All rights reserved. @@ -15,7 +15,7 @@ ;; the documentation and/or other materials provided with the ;; distribution. ;; -;; - Neither the name of The Numerical ALgorithms Group Ltd. nor the +;; - Neither the name of The Numerical Algorithms Group Ltd. nor the ;; names of its contributors may be used to endorse or promote products ;; derived from this software without specific prior written permission. ;; @@ -36,7 +36,12 @@ #+:common-lisp (:use "COMMON-LISP") #-:common-lisp (:use "LISP") #+:SBCL (:use "SB-ALIEN") - (:use "AxiomCore")) + (:use "AxiomCore") + (:import-from "BOOTTRAN" + "systemRootDirectory" + "systemLibraryDirectory" + "loadNativeModule" + "loadSystemRuntimeCore")) (in-package "BOOT") @@ -59,13 +64,11 @@ (defun acoth (x) (atanh (/ 1 x))) (defun asech (x) (acosh (/ 1 x))) -#+(or :cmu :akcl :gcl) (defun cot (a) (if (or (> a 1000.0) (< a -1000.0)) (/ (cos a) (sin a)) (/ 1.0 (tan a)))) -#+(or :cmu :akcl :gcl) (defun acot (a) (if (> a 0.0) (if (> a 1.0) @@ -76,7 +79,6 @@ (+ (/ pi 2.0) (atan (- a)))))) ; This is a Mantissa and Exponent function. -#+(or :cmu :akcl :gcl) (defun manexp (u) (multiple-value-bind (f e s) (decode-float u) diff --git a/src/interp/bootlex.lisp b/src/interp/bootlex.lisp index 6fae9513..7c74fac9 100644 --- a/src/interp/bootlex.lisp +++ b/src/interp/bootlex.lisp @@ -1,6 +1,6 @@ -;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. ;; All rights reserved. -;; Copyright (C) 2007, Gabriel Dos Reis. +;; Copyright (C) 2007-2008, Gabriel Dos Reis. ;; All rights reserved. ;; ;; Redistribution and use in source and binary forms, with or without @@ -15,7 +15,7 @@ ;; the documentation and/or other materials provided with the ;; distribution. ;; -;; - Neither the name of The Numerical ALgorithms Group Ltd. nor the +;; - Neither the name of The Numerical Algorithms Group Ltd. nor the ;; names of its contributors may be used to endorse or promote products ;; derived from this software without specific prior written permission. ;; @@ -116,8 +116,9 @@ (setq |$InteractiveMode| NIL) (init-boot/spad-reader) (with-open-stream - (in-stream (if *boot-input-file* (open *boot-input-file* :direction :input) - *standard-input*)) + (in-stream (if *boot-input-file* + (open *boot-input-file* :direction :input) + *standard-input*)) (initialize-preparse in-stream) (with-open-stream (out-stream (if *boot-output-file* diff --git a/src/interp/br-saturn.boot b/src/interp/br-saturn.boot index 32225b11..51f61968 100644 --- a/src/interp/br-saturn.boot +++ b/src/interp/br-saturn.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -634,7 +634,7 @@ htpMakeEmptyPage(propList,:options) == name := IFCAR options or GENTEMP() if not $saturn then $activePageList := [name, :$activePageList] - SET(name, val := VECTOR(name, nil, nil, nil, nil, nil, propList, nil)) + setDynamicBinding(name, val := VECTOR(name, nil, nil, nil, nil, nil, propList, nil)) val --======================================================================= diff --git a/src/interp/buildom.boot b/src/interp/buildom.boot index 5b76b044..a264223b 100644 --- a/src/interp/buildom.boot +++ b/src/interp/buildom.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -65,7 +65,7 @@ RecordInner args == Record0 VEC2LIST args Record0 args == - dom := newDomainShell 10 + dom := newShell 10 -- JHD added an extra slot to cache EQUAL methods dom.0 := ["Record", :[["_:", CAR a, devaluate CDR a] for a in args]] dom.1 := @@ -83,7 +83,7 @@ Record0 args == -- following is cache for equality functions dom.9 := if (n:= LENGTH args) <= 2 then [NIL,:NIL] - else newDomainShell n + else newShell n dom RecordEqual(x,y,dom) == @@ -129,7 +129,7 @@ coerceRe2E(x,source) == -- Want to eventually have the coerce to and from branch types. Union(:args) == - dom := newDomainShell 9 + dom := newShell 9 dom.0 := ["Union", :[(if a is ["_:",tag,domval] then ["_:",tag,devaluate domval] else devaluate a) for a in args]] dom.1 := @@ -137,8 +137,7 @@ Union(:args) == [["_=",[[["Boolean"],"_$","_$"],:12]], ["coerce",[[$OutputForm,"_$"],:14]]]] dom.2 := NIL - dom.3 := - '(SetCategory) + dom.3 := ["UnionCategory",:QCDR dom.0] dom.4 := [$commonCategoryDefaults, $commonCategoryAncestors] dom.5 := args @@ -153,7 +152,7 @@ UnionEqual(x, y, dom) == predlist := mkPredList branches same := false for b in stripUnionTags branches for p in predlist while not same repeat - typeFun := ["LAMBDA", '(_#1), p] + typeFun := eval ["LAMBDA", '(_#1), p] FUNCALL(typeFun,x) and FUNCALL(typeFun,y) => STRINGP b => same := (x = y) if p is ["EQCAR", :.] then (x := rest x; y := rest y) @@ -168,7 +167,7 @@ coerceUn2E(x,source) == predlist := mkPredList branches byGeorge := byJane := GENSYM() for b in stripUnionTags branches for p in predlist repeat - typeFun := ["LAMBDA", '(_#1), p] + typeFun := eval ["LAMBDA", '(_#1), p] if FUNCALL(typeFun,x) then return if p is ["EQCAR", :.] then x := rest x -- STRINGP b => return x -- to catch "failed" etc. @@ -182,7 +181,7 @@ coerceUn2E(x,source) == -- Want to eventually have elt: ($, args) -> target Mapping(:args) == - dom := newDomainShell 9 + dom := newShell 9 dom.0 := ["Mapping", :[devaluate a for a in args]] dom.1 := [function lookupInTable,dom, @@ -212,7 +211,7 @@ coerceMap2E(x) == --% Enumeration Enumeration(:"args") == - dom := newDomainShell 9 + dom := newShell 9 -- JHD added an extra slot to cache EQUAL methods dom.0 := ["Enumeration", :args] dom.1 := @@ -248,18 +247,13 @@ EnumerationCategory(:"x") == constructorCategory ["Enumeration",:x] UnionCategory(:"x") == constructorCategory ["Union",:x] ---ListCategory(:"x") == constructorCategory ("List",:x) - ---VectorCategory(:"x") == constructorCategory ("Vector",:x) - --above two now defined in SPAD code. - constructorCategory (title is [op,:.]) == constructorFunction:= GETL(op,"makeFunctionList") or systemErrorHere '"constructorCategory" [funlist,.]:= FUNCALL(constructorFunction,"$",title,$CategoryFrame) oplist:= [[[a,b],true,c] for [a,b,c] in funlist] cat:= - JoinInner([SetCategory(),mkCategory("domain",oplist,nil,nil,nil)], + JoinInner([eval ["SetCategory"],mkCategory("domain",oplist,nil,nil,nil)], $EmptyEnvironment) cat.(0):= title cat diff --git a/src/interp/c-util.boot b/src/interp/c-util.boot index 850fe090..f5b1fd48 100644 --- a/src/interp/c-util.boot +++ b/src/interp/c-util.boot @@ -640,7 +640,7 @@ sublisV(p,e) == v:= suba(p,QCDR e) EQ(QCAR e,u) and EQ(QCDR e,v) => e [u,:v] - + --% DEBUGGING PRINT ROUTINES used in breaks _?MODEMAPS x == _?modemaps x diff --git a/src/interp/category.boot b/src/interp/category.boot index e03956b2..d3a21b25 100644 --- a/src/interp/category.boot +++ b/src/interp/category.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -93,7 +93,7 @@ mkCategory(domainOrPackage,sigList,attList,domList,PrincipalAncestor) == repeat NewLocals:= delete(first u,NewLocals) for u in NewLocals repeat (OldLocals:= [[u,:count],:OldLocals]; count:= count+1) - v:= newDomainShell count + v:= newShell count v.(0):= nil v.(1):= sigList v.2:= attList diff --git a/src/interp/clam.boot b/src/interp/clam.boot index acbbed21..0f6b17d4 100644 --- a/src/interp/clam.boot +++ b/src/interp/clam.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -107,8 +107,8 @@ compClam(op,argl,body,$clamList) == if $reportCounts=true then hitCounter:= INTERNL(op,'";hit") callCounter:= INTERNL(op,'";calls") - SET(hitCounter,0) - SET(callCounter,0) + setDynamicBinding(hitCounter,0) + setDynamicBinding(callCounter,0) callCountCode:= [['SETQ,callCounter,['QSADD1,callCounter]]] hitCountCode:= [['SETQ,hitCounter,['QSADD1,hitCounter]]] g2:= GENSYM() --length of cache or arg-value pair @@ -207,8 +207,8 @@ compHash(op,argl,body,cacheNameOrNil,eqEtc,countFl) == if $reportCounts=true then hitCounter:= INTERNL(op,'";hit") callCounter:= INTERNL(op,'";calls") - SET(hitCounter,0) - SET(callCounter,0) + setDynamicBinding(hitCounter,0) + setDynamicBinding(callCounter,0) callCountCode:= [['SETQ,callCounter,['QSADD1,callCounter]]] hitCountCode:= [['SETQ,hitCounter,['QSADD1,hitCounter]]] g2:= GENSYM() --value computed by calling function @@ -356,13 +356,13 @@ clearCategoryCaches() == for name in allConstructors() repeat if GETDATABASE(name,'CONSTRUCTORKIND) = 'category then if BOUNDP(cacheName:= INTERNL STRCONC(PNAME name,'";AL")) - then SET(cacheName,nil) + then setDynamicBinding(cacheName,nil) if BOUNDP(cacheName:= INTERNL STRCONC(PNAME name,'";CAT")) - then SET(cacheName,nil) + then setDynamicBinding(cacheName,nil) clearCategoryCache catName == cacheName:= INTERNL STRCONC(PNAME catName,'";AL") - SET(cacheName,nil) + setDynamicBinding(cacheName,nil) displayHashtable x == l:= NREVERSE SORTBY('CAR,[[opOf HGET(x,key),key] for key in HKEYS x]) @@ -443,7 +443,7 @@ assocCache(x,cacheName,fn) == backPointer:= forwardPointer forwardPointer:= CDR forwardPointer val => val - SET(cacheName,backPointer) + setDynamicBinding(cacheName,backPointer) nil assocCacheShift(x,cacheName,fn) == --like ASSOC except that al is circular @@ -460,7 +460,7 @@ assocCacheShift(x,cacheName,fn) == --like ASSOC except that al is circular backPointer := forwardPointer --CAR is slot replaced on failure forwardPointer:= CDR forwardPointer val => val - SET(cacheName,backPointer) + setDynamicBinding(cacheName,backPointer) nil assocCacheShiftCount(x,al,fn) == @@ -494,8 +494,8 @@ clamStats() == hitCounter:= INTERNL(op,'";hit") callCounter:= INTERNL(op,'";calls") res:= ["%b",eval hitCounter,"/",eval callCounter,"%d","calls to "] - SET(hitCounter,0) - SET(callCounter,0) + setDynamicBinding(hitCounter,0) + setDynamicBinding(callCounter,0) res postString:= cacheValue:= eval cacheVec.cacheName @@ -708,4 +708,4 @@ domainEqualList(argl1,argl2) == removeAllClams() == for [fun,:.] in $clamList repeat sayBrightly ['"Un-clamming function",'%b,fun,'%d] - SET(fun,eval INTERN STRCONC(STRINGIMAGE fun,'";")) + setDynamicBinding(fun,eval INTERN STRCONC(STRINGIMAGE fun,'";")) diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot index bd9cf135..236f1d34 100644 --- a/src/interp/compiler.boot +++ b/src/interp/compiler.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -1305,6 +1305,8 @@ coerceHard(T,m) == $bootStrapMode = true => [T.expr,m,$e] extendsCategoryForm(T.expr,T.mode,m) => [T.expr,m,$e] coerceExtraHard(T,m) + (m' = "$" and m = $functorForm) or (m' = $functorForm and m = "$") => + [T.expr,m,$e] coerceExtraHard(T,m) coerceExtraHard: (%Triple,%Mode) -> %Triple diff --git a/src/interp/daase.lisp b/src/interp/daase.lisp index c8a7c7c0..59b36516 100644 --- a/src/interp/daase.lisp +++ b/src/interp/daase.lisp @@ -1,4 +1,4 @@ -;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. ;; All rights reserved. ;; Copyright (C) 2007-2008, Gabriel Dos Reis. ;; All rights reserved. @@ -15,7 +15,7 @@ ;; the documentation and/or other materials provided with the ;; distribution. ;; -;; - Neither the name of The Numerical ALgorithms Group Ltd. nor the +;; - Neither the name of The Numerical Algorithms Group Ltd. nor the ;; names of its contributors may be used to endorse or promote products ;; derived from this software without specific prior written permission. ;; @@ -304,8 +304,8 @@ (defun asharp (file &optional (flags *asharpflags*)) "call the asharp compiler" (|runProgram| - (concatenate 'string (|systemRootDirectory|) "/compiler/bin/axiomxl" - (list flags file)))) + (concatenate 'string (|systemRootDirectory|) "/compiler/bin/axiomxl") + (list flags file))) (defun resethashtables () "set all -hash* to clean values. used to clean up core before saving system" @@ -796,7 +796,7 @@ (defun get-current-directory () (namestring (extensions::default-directory))) -#+(or :akcl :gcl) +#+(or :akcl :gcl :clisp :sbcl) (defun get-current-directory () (namestring (truename ""))) @@ -807,88 +807,99 @@ ; .ao, then asharp to .asy (defun localdatabase (filelist options &optional (make-database? nil)) - "read a local filename and update the hash tables" - (labels ( - (processOptions (options) - (let (only dir noexpose) - (when (setq only (assoc '|only| options)) - (setq options (delete only options :test #'equal)) - (setq only (cdr only))) - (when (setq dir (assoc '|dir| options)) - (setq options (delete dir options :test #'equal)) - (setq dir (second dir)) - (when (null dir) - (|sayKeyedMsg| 'S2IU0002 nil) )) - (when (setq noexpose (assoc '|noexpose| options)) - (setq options (delete noexpose options :test #'equal)) - (setq noexpose 't) ) - (when options - (format t " Ignoring unknown )library option: ~a~%" options)) - (values only dir noexpose))) - (processDir (dirarg thisdir) - (let (allfiles skipasos) - (|changeDirectory| (string dirarg)) - (setq allfiles (directory "*")) - (|changeDirectory| thisdir) - (values - (mapcan #'(lambda (f) - (when (string-equal (pathname-type f) "NRLIB") - (list (concatenate 'string (namestring f) "/" *index-filename*)))) - allfiles) - (mapcan #'(lambda (f) - (when (string= (pathname-type f) "asy") - (push (pathname-name f) skipasos) - (list (namestring f)))) allfiles) - (mapcan #'(lambda (f) - (when (and (string= (pathname-type f) "ao") - (not (member (pathname-name f) skipasos :test #'string=))) - (list (namestring f)))) - allfiles) - ;; At the moment we will only look for user.lib: others are taken care - ;; of by localasy and localnrlib. - nil - )))) - (let (thisdir nrlibs asos asys libs object only dir key - (|$forceDatabaseUpdate| t) noexpose) - (declare (special |$forceDatabaseUpdate|)) - (setq thisdir (namestring (truename "."))) - (setq noexpose nil) - (multiple-value-setq (only dir noexpose) (processOptions options)) + "read a local filename and update the hash tables" + (labels + ((processOptions (options) + (let (only dir noexpose) + (when (setq only (assoc '|only| options)) + (setq options (delete only options :test #'equal)) + (setq only (cdr only))) + (when (setq dir (assoc '|dir| options)) + (setq options (delete dir options :test #'equal)) + (setq dir (second dir)) + (when (null dir) + (|sayKeyedMsg| 'S2IU0002 nil) )) + (when (setq noexpose (assoc '|noexpose| options)) + (setq options (delete noexpose options :test #'equal)) + (setq noexpose 't) ) + (when options + (format t " Ignoring unknown )library option: ~a~%" options)) + (values only dir noexpose))) + (processDir (dirarg thisdir) + (|changeDirectory| (string dirarg)) + (let ((indexFiles (|getAllIndexPathnames|)) + (aldorFiles (|getAllAldorObjectFiles|))) + (|changeDirectory| thisdir) + (values + indexFiles + (first aldorFiles) + (second aldorFiles) + ;; At the moment we will only look for user.lib: others + ;; are taken care of by localasy and localnrlib. + nil + )))) + (let (thisdir nrlibs asos asys libs object only dir key + (|$forceDatabaseUpdate| t) noexpose) + (declare (special |$forceDatabaseUpdate|)) + (setq thisdir (get-current-directory)) + (setq noexpose nil) + (multiple-value-setq (only dir noexpose) (processOptions options)) ;don't force exposure during database build - (if make-database? (setq noexpose t)) - (when dir (multiple-value-setq (nrlibs asys asos libs) (processDir dir thisdir))) - (dolist (file filelist) - (let ((filename (pathname-name file)) - (namedir (directory-namestring file))) - (unless namedir (setq thisdir (concatenate 'string thisdir "/"))) - (cond - ((setq file (probe-file - (concatenate 'string namedir filename ".NRLIB/" - *index-filename*))) - (push (namestring file) nrlibs)) - ((setq file (probe-file - (concatenate 'string namedir filename ".asy"))) - (push (namestring file) asys)) - ((setq file (probe-file - (concatenate 'string namedir filename ".ao"))) - (push (namestring file) asos)) - ('else (format t " )library cannot find the file ~a.~%" filename))))) - (dolist (file (nreverse nrlibs)) - (setq key (pathname-name (first (last (pathname-directory file))))) - (setq object (concatenate 'string (directory-namestring file) - "code." |$faslType|)) - (localnrlib key file object make-database? noexpose)) - (dolist (file (nreverse asys)) - (setq object - (concatenate 'string (directory-namestring file) (pathname-name file))) - (localasy (|astran| file) object only make-database? noexpose)) - (dolist (file (nreverse asos)) - (setq object - (concatenate 'string (directory-namestring file) (pathname-name file))) - (asharp file) - (setq file (|astran| (concatenate 'string (pathname-name file) ".asy"))) - (localasy file object only make-database? noexpose)) - (HCLEAR |$ConstructorCache|)))) + (if make-database? + (setq noexpose t)) + (if dir + (multiple-value-setq (nrlibs asys asos libs) + (processDir dir thisdir))) + (dolist (file filelist) + (let ((filename (pathname-name file)) + (namedir (directory-namestring file))) + (unless namedir + (setq thisdir (concatenate 'string thisdir "/"))) + (cond + ((setq file (probe-file + (concatenate 'string + namedir + filename + ".NRLIB/" + |$IndexFilename|))) + (push (namestring file) nrlibs)) + ((setq file (probe-file + (concatenate 'string + namedir + filename + ".asy"))) + (push (namestring file) asys)) + ((setq file (probe-file + (concatenate 'string + namedir + filename + ".ao"))) + (push (namestring file) asos)) + ('else (format t " )library cannot find the file ~a.~%" filename))))) + (dolist (file (nreverse nrlibs)) + (setq key (pathname-name (first (last (pathname-directory file))))) + (setq object (concatenate 'string + (directory-namestring file) + "code." |$faslType|)) + (localnrlib key file object make-database? noexpose)) + (dolist (file (nreverse asys)) + (setq object + (concatenate 'string + (directory-namestring file) + (pathname-name file))) + (localasy (|astran| file) object only make-database? noexpose)) + (dolist (file (nreverse asos)) + (setq object + (concatenate 'string + (directory-namestring file) + (pathname-name file))) + (asharp file) + (setq file (|astran| (concatenate 'string + (pathname-name file) + ".asy"))) + (localasy file object only make-database? noexpose)) + (HCLEAR |$ConstructorCache|)))) + (defun localasy (asy object only make-database? noexpose) "given an alist from the asyfile and the objectfile update the database" @@ -1054,7 +1065,6 @@ (|unloadOneConstructor| (get abbrev 'abbreviationfor) abbrev) ) (|sayKeyedMsg| 'S2IU0001 (list key object)))))) - ; making new databases consists of: ; 1) reset all of the system hash tables ; *) set up Union, Record and Mapping @@ -1074,17 +1084,13 @@ ; critical. interp.daase depends on prior computations and has ; to be written out last. -(defun make-databases (ext dirlist) +(defun make-databases (dirlist) (labels ( ;; these are types which have no library object associated with them. ;; we store some constructed data to make them perform like library ;; objects, the *operationalist-hash* key entry is used by allConstructors (withSpecialConstructors () ; note: if item is not in *operationalist-hash* it will not be written - ; Category - (setf (get '|Category| 'database) - (make-database :operationalist nil :niladic t)) - (push '|Category| *allconstructors*) ; UNION (setf (get '|Union| 'database) (make-database :operationalist nil :constructorkind '|domain|)) @@ -1103,7 +1109,7 @@ (push '|Enumeration| *allconstructors*) ) (final-name (root) - (format nil "~a.daase~a" root ext)) + (concat root ".daase")) ) (let (d) (declare (special |$constructorList|)) @@ -1116,13 +1122,13 @@ (setq *compressvector* nil) (withSpecialConstructors) (localdatabase nil - (list (list '|dir| (namestring (truename "./")) )) + (list (list '|dir| (get-current-directory) )) 'make-database) (dolist (dir dirlist) (localdatabase nil (list (list '|dir| (namestring (probe-file - (format nil "./~a" + (concat "./" dir))))) 'make-database)) #+:AKCL (|mkTopicHashTable|) @@ -1277,20 +1283,21 @@ (setq modemapspos (file-position out)) (print (squeeze (database-modemaps struct)) out) (finish-output out) - (if (consp (database-object struct)) ; if asharp code ... - (setq obj - (cons (pathname-name (car (database-object struct))) - (cdr (database-object struct)))) - (setq obj - (pathname-name - (first (last (pathname-directory (database-object struct))))))) + (let ((entry (database-object struct))) + (cond ((consp entry) + (setq obj (cons (pathname-name (car entry)) + (cdr entry)))) + (entry + (setq obj (pathname-name + (first (last (pathname-directory entry)))))) + (t (setq obj nil)))) (setq concategory (squeeze (database-constructorcategory struct))) (if concategory ; if category then write data else write nil - (progn - (setq categorypos (file-position out)) - (print concategory out) - (finish-output out)) - (setq categorypos nil)) + (progn + (setq categorypos (file-position out)) + (print concategory out) + (finish-output out)) + (setq categorypos nil)) (setq niladic (database-niladic struct)) (setq abbrev (database-abbreviation struct)) (setq cosig (database-cosig struct)) @@ -1298,17 +1305,17 @@ (setq defaultdomain (database-defaultdomain struct)) (setq ancestors (squeeze (gethash constructor *ancestors-hash*))) ;cattable.boot (if ancestors - (progn - (setq ancestorspos (file-position out)) - (print ancestors out) - (finish-output out)) - (setq ancestorspos nil)) + (progn + (setq ancestorspos (file-position out)) + (print ancestors out) + (finish-output out)) + (setq ancestorspos nil)) (push (list constructor opalistpos cmodemappos modemapspos - obj categorypos niladic abbrev cosig kind defaultdomain - ancestorspos) master))) + obj categorypos niladic abbrev cosig kind defaultdomain + ancestorspos) master))) (finish-output out) (setq masterpos (file-position out)) - (print (mapcar #'squeeze master) out) + (print (|squeezeAll| master) out) (finish-output out) (file-position out 0) (print (cons masterpos (get-universal-time)) out) @@ -1342,7 +1349,7 @@ (push (list constructor src formpos docpos attpos predpos) master))) (finish-output out) (setq masterpos (file-position out)) - (print (mapcar #'squeeze master) out) + (print (|squeezeAll| master) out) (finish-output out) (file-position out 0) (print (cons masterpos (get-universal-time)) out) @@ -1367,7 +1374,7 @@ (push (list key pos) master)) *hasCategory-hash*) (setq pos (file-position out)) - (print (mapcar #'squeeze master) out) + (print (|squeezeAll| master) out) (finish-output out) (file-position out 0) (print (cons pos (get-universal-time)) out) @@ -1418,7 +1425,7 @@ *operation-hash*) (finish-output out) (setq pos (file-position out)) - (print (mapcar #'squeeze master) out) + (print (|squeezeAll| master) out) (file-position out 0) (print (cons pos (get-universal-time)) out) (finish-output out) diff --git a/src/interp/database.boot b/src/interp/database.boot index 60387234..f0d18926 100644 --- a/src/interp/database.boot +++ b/src/interp/database.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -670,3 +670,7 @@ displayHiddenConstructors() == centerAndHighlight c +--% +squeezeAll: %List -> %List +squeezeAll x == + [SQUEEZE t for t in x] diff --git a/src/interp/define.boot b/src/interp/define.boot index d49edfd8..08a302ce 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -104,7 +104,7 @@ compDefine1(form,m,e) == ['DEF,lhs,signature,specialCases,rhs]:= form:= macroExpand(form,e) $insideWhereIfTrue and isMacro(form,e) and (m=$EmptyMode or m=$NoValueMode) => [lhs,m,put(first lhs,'macro,rhs,e)] - null signature.target and not MEMQ(KAR rhs,$ConstructorNames) and + null signature.target and not MEMQ(KAR rhs,$BuiltinConstructorNames) and (sig:= getSignatureFromMode(lhs,e)) => -- here signature of lhs is determined by a previous declaration compDefine1(['DEF,lhs,[first sig,:rest signature],specialCases,rhs],m,e) diff --git a/src/interp/dq.boot b/src/interp/dq.boot index 894e21cd..55a1c048 100644 --- a/src/interp/dq.boot +++ b/src/interp/dq.boot @@ -1,6 +1,6 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. --- Copyright (C) 2007, Gabriel Dos Reis. +-- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -32,8 +32,7 @@ -- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -import '"boot-pkg" - +import '"types" )package "BOOT" -- Dequeue functions diff --git a/src/interp/functor.boot b/src/interp/functor.boot index 3e129534..63a94544 100644 --- a/src/interp/functor.boot +++ b/src/interp/functor.boot @@ -227,7 +227,7 @@ compCategories1(u,v) == error 'compCategories1 NewbFVectorCopy(u,domName) == - v:= newDomainShell SIZE u + v:= newShell SIZE u for i in 0..5 repeat v.i:= u.i for i in 6..MAXINDEX v | PAIRP u.i repeat v.i:= [function Undef,[domName,i],:first u.i] v @@ -550,9 +550,9 @@ DescendCodeAdd1(base,flag,target,formalArgs,formalArgModes) == 'adding))^=nil] --The code from here to the end is designed to replace repeated LOAD/STORE --combinations (SETELT ...(ELT ..)) by MVCs where this is practicable - copyvec := newDomainShell (1+n) - for u in code repeat - if update(u,copyvec,[]) then code:=delete(u,code) + copyvec := newShell (1+n) + (for u in code repeat + if update(u,copyvec,[]) then code:=delete(u,code)) where update(code,copyvec,sofar) == ATOM code =>nil MEMQ(QCAR code,'(ELT QREFELT)) => diff --git a/src/interp/g-util.boot b/src/interp/g-util.boot index 52c9a7fc..3bcb22da 100644 --- a/src/interp/g-util.boot +++ b/src/interp/g-util.boot @@ -729,8 +729,8 @@ gensymInt g == n ++ -newDomainShell: %Short -> SIMPLE_-ARRAY -newDomainShell n == +newShell: %Short -> SIMPLE_-ARRAY +newShell n == MAKE_-ARRAY(n,KEYWORD::INITIAL_-ELEMENT,nil) diff --git a/src/interp/ht-root.boot b/src/interp/ht-root.boot index 59099875..d6570961 100644 --- a/src/interp/ht-root.boot +++ b/src/interp/ht-root.boot @@ -126,7 +126,7 @@ htSetSystemVariableKind(htPage,[variable,name,fun]) == value := htpLabelInputString(htPage,name) if STRINGP value and fun then value := FUNCALL(fun,value) --SCM::what to do??? if not FIXP value then userError ??? - SET(variable,value) + setDynamicBinding(variable,value) htSystemVariables () htSetSystemVariable(htPage,[name,value]) == @@ -134,7 +134,7 @@ htSetSystemVariable(htPage,[name,value]) == value = 'on => true value = 'off => nil value - SET(name,value) + setDynamicBinding(name,value) htSystemVariables () htGloss(pattern) == htGlossPage(nil,dbNonEmptyPattern pattern or '"*",true) diff --git a/src/interp/ht-util.boot b/src/interp/ht-util.boot index c94815c2..e2e4e61c 100644 --- a/src/interp/ht-util.boot +++ b/src/interp/ht-util.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -50,7 +50,7 @@ $activePageList := nil htpDestroyPage(pageName) == pageName in $activePageList => - SET(pageName, nil) + setDynamicBinding(pageName, nil) $activePageList := NREMOVE($activePageList, pageName) htpName htPage == diff --git a/src/interp/htsetvar.boot b/src/interp/htsetvar.boot index a563645e..59b6aff1 100644 --- a/src/interp/htsetvar.boot +++ b/src/interp/htsetvar.boot @@ -1,6 +1,6 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. --- Copyright (C) 2007, Gabriel Dos Reis. +-- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -133,7 +133,7 @@ htSetLiterals(htPage,name,message,variable,values,functionToCall) == htSetLiteral(htPage, val) == htInitPage('"Set Command", nil) - SET(htpProperty(htPage, 'variable), translateYesNo2TrueFalse val) + setDynamicBinding(htpProperty(htPage, 'variable), translateYesNo2TrueFalse val) htKill(htPage,val) htShowIntegerPage(htPage, setData) == @@ -172,7 +172,7 @@ htSetInteger(htPage) == val := chkRange htpLabelInputString(htPage,'value) not INTEGERP val => errorPage(htPage,['"Value Error",nil,'"\vspace{3}\centerline{{\em ",val,'"}}\vspace{2}\newline\centerline{Click on \UpBitmap{} to re-enter value}"]) - SET(htpProperty(htPage, 'variable), val) + setDynamicBinding(htpProperty(htPage, 'variable), val) htKill(htPage,val) htShowFunctionPage(htPage,setData) == @@ -215,14 +215,14 @@ htSetvarDoneButton(message, func) == htFunctionSetLiteral(htPage, val) == htInitPage('"Set Command", nil) - SET(htpProperty(htPage, 'variable), translateYesNo2TrueFalse val) + setDynamicBinding(htpProperty(htPage, 'variable), translateYesNo2TrueFalse val) htSetFunCommandContinue(htPage,val) htSetFunCommand(htPage) == variable := htpProperty(htPage,'variable) checker := htpProperty(htPage,'checker) value := htCheck(checker,htpLabelInputString(htPage,'value)) - SET(variable,value) --kill this later + setDynamicBinding(variable,value) --kill this later htSetFunCommandContinue(htPage,value) htSetFunCommandContinue(htPage,value) == diff --git a/src/interp/hypertex.boot b/src/interp/hypertex.boot index 21a3a1e3..f12ecb1a 100644 --- a/src/interp/hypertex.boot +++ b/src/interp/hypertex.boot @@ -1,6 +1,6 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. --- Copyright (C) 2007, Gabriel Dos Reis. +-- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -32,7 +32,7 @@ -- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -import '"boot-pkg" +import '"types" )package "BOOT" -- HyperTex Spad interface diff --git a/src/interp/i-map.boot b/src/interp/i-map.boot index 882763df..f11478e4 100644 --- a/src/interp/i-map.boot +++ b/src/interp/i-map.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -758,7 +758,7 @@ compileCoerceMap(op,argTypes,mm) == body := SUBST(minivectorName,"$$$",body) if $compilingInputFile then $minivectorCode := [:$minivectorCode,minivectorName] - SET(minivectorName,LIST2REFVEC $minivector) + setDynamicBinding(minivectorName,LIST2REFVEC $minivector) compileInteractive [name,['LAMBDA,parms,body]] CAR sig diff --git a/src/interp/i-object.boot b/src/interp/i-object.boot index 77252919..465c60d8 100644 --- a/src/interp/i-object.boot +++ b/src/interp/i-object.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -188,7 +188,7 @@ getBasicObject x == ++ create a leaf VAT node. mkAtreeNode x == -- maker of attrib tree node - v := MAKE_-VEC 5 + v := newShell 5 v.0 := x v diff --git a/src/interp/i-output.boot b/src/interp/i-output.boot index 2f45ce54..1ed56546 100644 --- a/src/interp/i-output.boot +++ b/src/interp/i-output.boot @@ -888,7 +888,7 @@ WIDTH u == negative := 0 -- Try and be fairly exact for smallish integers: u = 0 => 1 - u < MOST_-POSITIVE_-LONG_-FLOAT => 1+negative+FLOOR ((LOG10 u) + 0.0000001) + u < MOST_-POSITIVE_-LONG_-FLOAT => 1+negative+FLOOR ((log10 u) + 0.0000001) -- Rough guess: integer-length returns log2 rounded up, so divide it by -- roughly log2(10). This should return an over-estimate, but for objects -- this big does it matter? diff --git a/src/interp/i-spec1.boot b/src/interp/i-spec1.boot index 66b3fe9f..5cf7b7d6 100644 --- a/src/interp/i-spec1.boot +++ b/src/interp/i-spec1.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -159,7 +159,7 @@ compileADEFBody(t,vars,types,body,computedResultType) == body := SUBST(minivectorName,"$$$",body) if $compilingInputFile then $minivectorCode := [:$minivectorCode,minivectorName] - SET(minivectorName,LIST2REFVEC $minivector) + setDynamicBinding(minivectorName,LIST2REFVEC $minivector) -- The use of the three variables $definingMap, $genValue and $compilingMap -- is to cover the following cases: diff --git a/src/interp/i-syscmd.boot b/src/interp/i-syscmd.boot index cb7e2536..77b2283a 100644 --- a/src/interp/i-syscmd.boot +++ b/src/interp/i-syscmd.boot @@ -2158,7 +2158,8 @@ reportCount () == library args == origDir := GET_-CURRENT_-DIRECTORY() $newConlist := [] - LOCALDATABASE(args,$options) + -- Users typically specify abbreviations without quotes. + LOCALDATABASE([STRING a for a in args],$options) extendLocalLibdb $newConlist changeDirectory origDir TERSYSCOMMAND() diff --git a/src/interp/lisplib.boot b/src/interp/lisplib.boot index d925a847..f0ee53c2 100644 --- a/src/interp/lisplib.boot +++ b/src/interp/lisplib.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -246,12 +246,13 @@ loadFunctor u == makeConstructorsAutoLoad() == for cnam in allConstructors() repeat + cnam in $CategoryNames => nil REMPROP(cnam,'LOADED) -- fn:=GETDATABASE(cnam,'ABBREVIATION) if GETDATABASE(cnam,'NILADIC) then PUT(cnam,'NILADIC,'T) else REMPROP(cnam,'NILADIC) - systemDependentMkAutoload(cnam,cnam) + systemDependentMkAutoload(constructor? cnam,cnam) systemDependentMkAutoload(fn,cnam) == FBOUNDP(cnam) => "next" @@ -264,15 +265,18 @@ systemDependentMkAutoload(fn,cnam) == ASHARPMKAUTOLOADCATEGORY(file, cnam, asharpName, cosig) ASHARPMKAUTOLOADFUNCTOR(file, cnam, asharpName, cosig) SETF(SYMBOL_-FUNCTION cnam,mkAutoLoad(fn, cnam)) - + autoLoad(abb,cname) == + -- builtin constructors are always loaded. By definition, there + -- is no way to unload them and load them again. + cname in $BuiltinConstructorNames => cname if not GETL(cname,'LOADED) then loadLib cname SYMBOL_-FUNCTION cname setAutoLoadProperty(name) == -- abb := constructor? name REMPROP(name,'LOADED) - SETF(SYMBOL_-FUNCTION name,mkAutoLoad(name, name)) + SETF(SYMBOL_-FUNCTION name,mkAutoLoad(constructor? name, name)) --% Compilation @@ -692,7 +696,7 @@ isFunctor x == op:= opOf x not IDENTP op => false $InteractiveMode => - MEMQ(op,'(Union SubDomain Mapping Record)) => true + MEMQ(op,$DomainNames) => true MEMQ(GETDATABASE(op,'CONSTRUCTORKIND),'(domain package)) u:= get(op,'isFunctor,$CategoryFrame) or MEMQ(op,'(SubDomain Union Record)) => u @@ -703,3 +707,50 @@ isFunctor x == else updateCategoryFrameForConstructor op get(op,'isFunctor,$CategoryFrame) nil + +--% + +getIndexPathname: %String -> %String +getIndexPathname dir == + strconc(ensureTrailingSlash dir, $IndexFilename) + +getAllIndexPathnames() == + -- GCL's semantics of Common Lisp's `DIRECTORY *' differs from the + -- rest of everybody else' semantics. Namely, GCL would return a + -- a list of drirectories AND files. Pretty much like `ls *'. + -- Everybody else strips out directories. +)if %hasFeature KEYWORD::GCL + [getIndexPathname NAMESTRING d for d in DIRECTORY '"*.NRLIB"] +)else + DIRECTORY strconc('"*.NRLIB/",$IndexFilename) +)endif + + +getAllAldorObjectFiles() == + asys := DIRECTORY '"*.asy" + asos := DIRECTORY '"*.ao" + -- don't include both a `x.asy' and `x.ao', and retain + -- only sensical .asy files. + dupAOs := MAPCAN(function PATHNAME_-NAME,asys) + [asys,[f for f in asos + | PATHNAME_-NAME f='"ao" and not member(PATHNAME_-NAME f,dupAOs)]] + + + +++ returns an open stream for the index file, if present, +++ in directory designated by 'dir'. +openIndexFileIfPresent: %String -> %Thing +openIndexFileIfPresent dir == + OPEN(getIndexPathname dir,KEYWORD::DIRECTION,KEYWORD::INPUT, + KEYWORD::IF_-DOES_-NOT_-EXIST,nil) + +++ +getIndexTable: %String -> %Thing +getIndexTable dir == + indexFile := getIndexPathname dir + existingFile? indexFile => + WITH_-OPEN_-FILE(stream indexFile, + GET_-INDEX_-TABLE_-FROM_-STREAM stream) + -- index file doesn't exist but mark this directory as a Lisplib. + WITH_-OPEN_-FILE(stream(indexFile,KEYWORD::DIRECTION,KEYWORD::OUTPUT), + nil) diff --git a/src/interp/macros.lisp b/src/interp/macros.lisp index aec5e26e..0a61c975 100644 --- a/src/interp/macros.lisp +++ b/src/interp/macros.lisp @@ -1,4 +1,4 @@ -;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. ;; All rights reserved. ;; Copyright (C) 2007-2008, Gabriel Dos Reis. ;; All rights reserved. @@ -15,7 +15,7 @@ ;; the documentation and/or other materials provided with the ;; distribution. ;; -;; - Neither the name of The Numerical ALgorithms Group Ltd. nor the +;; - Neither the name of The Numerical Algorithms Group Ltd. nor the ;; names of its contributors may be used to endorse or promote products ;; derived from this software without specific prior written permission. ;; @@ -329,7 +329,7 @@ ; 22.2.1 Input from Character Streams -(DEFUN STREAM-EOF (&optional (STRM *terminal-io*)) +(DEFUN STREAM-EOF (&optional (STRM *standard-input*)) "T if input stream STRM is at the end or saw a ~." (not (peek-char nil STRM nil nil nil)) ) @@ -386,7 +386,7 @@ ((stringp x) x) ((write-to-string x)))) -(defvar |conOutStream| *terminal-io* "console output stream") +(defvar |conOutStream| *standard-output* "console output stream") (defun |sayTeX| (x) (if (null x) nil (sayBrightly1 x |$texOutputStream|))) @@ -398,7 +398,7 @@ (COND ((NULL X) NIL) (|$sayBrightlyStream| (sayBrightly1 X |$sayBrightlyStream|)) ((IS-CONSOLE out-stream) (sayBrightly1 X out-stream)) - ((sayBrightly1 X out-stream) (sayBrightly1 X *terminal-io*)))) + ((sayBrightly1 X out-stream) (sayBrightly1 X *standard-output*)))) (defun |sayBrightlyI| (x &optional (s *terminal-io*)) "Prints at console or output stream." diff --git a/src/interp/nlib.lisp b/src/interp/nlib.lisp index 00393de5..aa3af3bf 100644 --- a/src/interp/nlib.lisp +++ b/src/interp/nlib.lisp @@ -35,8 +35,6 @@ (IMPORT-MODULE "macros") (in-package "BOOT") -#+:AKCL (defvar *lisp-source-filetype* "lsp") - ;; definition of our stream structure (defstruct libstream mode dirname (indextable nil) (indexstream nil)) ;indextable is a list of entries (key class <location or filename>) @@ -63,7 +61,7 @@ (cond ((equal (elt (string mode) 0) #\I) ;;(setq fullname (make-input-filename (cdr file) 'LISPLIB)) (setq fullname (make-input-filename (cdr file) 'NIL)) - (setq stream (get-input-index-stream fullname)) + (setq stream (|openIndexFileIfPresent| fullname)) (if (null stream) (if missing-file-error-flag (ERROR (format nil "Library ~s doesn't exist" @@ -90,19 +88,6 @@ ('t (ERROR "Unknown MODE"))))) -;get the index table of the lisplib in dirname -(defun getindextable (dirname) - (let ((index-file (concat dirname "/" *index-filename*))) - (if (probe-file index-file) - (with-open-file (stream index-file) (get-index-table-from-stream stream)) - ;; create empty index file to mark directory as lisplib - (with-open-file (stream index-file :direction :output) nil)))) - -;get the index stream of the lisplib in dirname -(defun get-input-index-stream (dirname) - (let ((index-file (concat dirname "/" *index-filename*))) - (open index-file :direction :input :if-does-not-exist nil))) - (defun get-index-table-from-stream (stream) (let ((pos (read stream))) (cond ((numberp pos) @@ -111,7 +96,7 @@ (t pos)))) (defun get-io-index-stream (dirname) - (let* ((index-file (concat dirname "/" *index-filename*)) + (let* ((index-file (concat dirname "/" |$IndexFilename|)) (stream (open index-file :direction :io :if-exists :overwrite :if-does-not-exist :create)) (indextable ()) @@ -138,14 +123,14 @@ ;;#+:ccl ;;(defun putindextable (indextable dirname) ;; (with-open-file -;; (stream (concat dirname "/" *index-filename*) +;; (stream (concat dirname "/" |$IndexFilename|) ;; :direction :io :if-does-not-exist :create) ;; (file-position stream :end) ;; (write-indextable indextable stream))) ;;#-:ccl (defun putindextable (indextable dirname) (with-open-file - (stream (concat dirname "/" *index-filename*) + (stream (concat dirname "/" |$IndexFilename|) :direction :io :if-exists :overwrite :if-does-not-exist :create) (file-position stream :end) @@ -173,10 +158,10 @@ ;; (RKEYIDS filearg) -- interned version of keys (defun rkeyids (&rest filearg) - (mapcar #'intern (mapcar #'car (getindextable + (mapcar #'intern (mapcar #'car (|getIndexTable| (make-input-filename filearg 'NIL))))) ;;(defun rkeyids (&rest filearg) -;; (mapcar #'intern (mapcar #'car (getindextable +;; (mapcar #'intern (mapcar #'car (|getIndexTable| ;; (make-input-filename filearg 'LISPLIB))))) ;; (RWRITE cvec item rstream) @@ -252,7 +237,7 @@ (nstream nil) (nindextable nil) (nrstream nil) - (index-file-name (concat (truename filespec) "/" *index-filename*)) + (index-file-name (concat (truename filespec) "/" |$IndexFilename|)) (temp-index-file-name (make-pathname :name "oldindex" :defaults index-file-name))) (rename-file index-file-name temp-index-file-name ) ;; stays until closed @@ -322,7 +307,7 @@ (define-function 'compile-lib-file #'compile-file) ;; (RDROPITEMS filearg keys) don't delete, used in files.spad -(defun rdropitems (filearg keys &aux (ctable (getindextable filearg))) +(defun rdropitems (filearg keys &aux (ctable (|getIndexTable| filearg))) (mapc #'(lambda(x) (setq ctable (delete x ctable :key #'car :test #'equal)) ) (mapcar #'string keys)) @@ -364,7 +349,7 @@ (if (probe-file file) (namestring file) nil)) (defun get-directory-list (ft) - (let ((cd (namestring (truename "./")))) + (let ((cd (get-current-directory))) (cond ((member ft '("NRLIB" "DAASE" "EXPOSED") :test #'string=) (if (eq |$UserLevel| '|development|) (cons cd $library-directory-list) diff --git a/src/interp/nruncomp.boot b/src/interp/nruncomp.boot index 2a3c719a..0136f78c 100644 --- a/src/interp/nruncomp.boot +++ b/src/interp/nruncomp.boot @@ -379,17 +379,17 @@ buildFunctor($definition is [name,:args],sig,code,$locals,$e) == -- category should be present. true => always makeCatvecCode:= first catvecListMaker emptyVector := VECTOR() - domainShell := newDomainShell ($NRTbase + $NRTdeltaLength) + domainShell := newShell ($NRTbase + $NRTdeltaLength) for i in 0..4 repeat domainShell.i := $domainShell.i --we will clobber elements; copy since $domainShell may be a cached vector $template := - $NRTvec = true => newDomainShell ($NRTbase + $NRTdeltaLength) + $NRTvec = true => newShell ($NRTbase + $NRTdeltaLength) nil $catvecList:= [domainShell,:[emptyVector for u in CADR domainShell.4]] $catNames := ['$] -- for DescendCode -- to be changed below for slot 4 $maximalViews:= nil - $SetFunctions:= newDomainShell SIZE domainShell - $MissingFunctionInfo:= newDomainShell SIZE domainShell + $SetFunctions:= newShell SIZE domainShell + $MissingFunctionInfo:= newShell SIZE domainShell $catNames:= ['$,:[GENVAR() for u in rest catvecListMaker]] domname:='dv_$ @@ -426,7 +426,7 @@ buildFunctor($definition is [name,:args],sig,code,$locals,$e) == --$NRTdomainFormList is unused now createDomainCode:= ['LET,domname,['LIST,MKQ CAR $definition,:ASSOCRIGHT $devaluateList]] - createViewCode:= ['LET,'$,["newDomainShell", $NRTbase + $NRTdeltaLength]] + createViewCode:= ['LET,'$,["newShell", $NRTbase + $NRTdeltaLength]] setVector0Code:=[$setelt,'$,0,'dv_$] slot3Code := ['QSETREFV,'$,3,['LET,'pv_$,predBitVectorCode1]] slamCode:= diff --git a/src/interp/nrunopt.boot b/src/interp/nrunopt.boot index 2abaab77..3490bb61 100644 --- a/src/interp/nrunopt.boot +++ b/src/interp/nrunopt.boot @@ -53,7 +53,7 @@ getInfovecCode() == makeDomainTemplate vec == --NOTES: This function is called at compile time to create the template -- (slot 0 of the infovec); called by getInfovecCode from compDefineFunctor1 - newVec := newDomainShell SIZE vec + newVec := newShell SIZE vec for index in 0..MAXINDEX vec repeat item := vec.index null item => nil diff --git a/src/interp/obey.lisp b/src/interp/obey.lisp index 6061ce8d..e3735817 100644 --- a/src/interp/obey.lisp +++ b/src/interp/obey.lisp @@ -33,6 +33,7 @@ (import-module "macros") +(import-module "sys-os") (in-package "BOOT") #+ (and :lucid :unix) @@ -58,6 +59,6 @@ (defun copy-file (namestring1 namestring2) (system:run-aix-program "cp" :arguments (list namestring1 namestring2))) -(setq |$algebraOutputStream| *terminal-io*) - +#+(or :sbcl :clisp) +(defun obey(s) (|runCommand| s)) diff --git a/src/interp/package.boot b/src/interp/package.boot index 87d33c5e..81152812 100644 --- a/src/interp/package.boot +++ b/src/interp/package.boot @@ -96,7 +96,7 @@ processPackage($definition is [name,:args],[$catsig,:argssig],code,locals,$e) == code:=[[($QuickCode=>'QSETREFV;'SETELT),"$",i,u'],:code] nreverse code code:= - ["PROGN",:$getDomainCode,["LET","$",["newDomainShell",#locals]], + ["PROGN",:$getDomainCode,["LET","$",["newShell",#locals]], --It is important to place this code here, --after $ is set up --slam functor with shell diff --git a/src/interp/patches.lisp b/src/interp/patches.lisp index b08dd0b8..0c651acf 100644 --- a/src/interp/patches.lisp +++ b/src/interp/patches.lisp @@ -134,7 +134,7 @@ (setq |$fortranOutputStream| (setq |$texOutputStream| (setq |$formulaOutputStream| - (setq |conOutStream| (make-synonym-stream '*terminal-io*)))))) + (setq |conOutStream|'*standard-output*))))) ;; non-interactive restarts... (defun restart0 () diff --git a/src/interp/pathname.boot b/src/interp/pathname.boot index 3b7fe71d..ea349019 100644 --- a/src/interp/pathname.boot +++ b/src/interp/pathname.boot @@ -1,6 +1,6 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. --- Copyright (C) 2007, Gabriel Dos Reis. +-- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -44,24 +44,34 @@ import '"nlib" --% Common Lisp Pathname Functions -pathname? p == p=[] or PATHNAMEP p +pathname? p == + null p or PATHNAMEP p pathname p == - p = [] => p + null p => p PATHNAMEP p => p not PAIRP p => PATHNAME p if #p>2 then p:=[p.0,p.1] PATHNAME APPLY(FUNCTION MAKE_-FILENAME, p) -namestring p == NAMESTRING pathname p +namestring p == + null p => nil + NAMESTRING pathname p -pathnameName p == PATHNAME_-NAME pathname p +pathnameName p == + null p => nil + PATHNAME_-NAME pathname p -pathnameType p == PATHNAME_-TYPE pathname p +pathnameType p == + null p => nil + PATHNAME_-TYPE pathname p -pathnameTypeId p == UPCASE object2Identifier pathnameType p +pathnameTypeId p == + null p => nil + UPCASE object2Identifier pathnameType p pathnameDirectory p == + null p => nil NAMESTRING MAKE_-PATHNAME(KEYWORD::DIRECTORY,PATHNAME_-DIRECTORY pathname p) deleteFile f == _$ERASE pathname f diff --git a/src/interp/preparse.lisp b/src/interp/preparse.lisp index 5c2cf911..8adb40e1 100644 --- a/src/interp/preparse.lisp +++ b/src/interp/preparse.lisp @@ -1,6 +1,6 @@ -;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. ;; All rights reserved. -;; Copyright (C) 2007, Gabriel Dos Reis. +;; Copyright (C) 2007-2008, Gabriel Dos Reis. ;; All rights reserved. ;; ;; Redistribution and use in source and binary forms, with or without @@ -15,7 +15,7 @@ ;; the documentation and/or other materials provided with the ;; distribution. ;; -;; - Neither the name of The Numerical ALgorithms Group Ltd. nor the +;; - Neither the name of The Numerical Algorithms Group Ltd. nor the ;; names of its contributors may be used to endorse or promote products ;; derived from this software without specific prior written permission. ;; @@ -79,13 +79,14 @@ (defun /RP (&optional (*boot-input-file* nil) (*boot-output-file* nil) ($preparseReportIfTrue t)) (with-open-stream - (in-stream (or (and *boot-input-file* (open *boot-input-file* :direction :input)) - *terminal-io*)) + (in-stream (or (and *boot-input-file* + (open *boot-input-file* :direction :input)) + *standard-input*)) (declare (special in-stream)) (with-open-stream (out-stream (if *boot-output-file* (open *boot-output-file* :direction :output) - *terminal-io*)) + *standard-output*)) (declare (special out-stream)) (initialize-preparse in-stream) (do ((lines (PREPARSE in-stream) (PREPARSE in-stream))) ((null lines))))) diff --git a/src/interp/pspad2.boot b/src/interp/pspad2.boot index 2a2fc03b..92c84b2a 100644 --- a/src/interp/pspad2.boot +++ b/src/interp/pspad2.boot @@ -118,7 +118,7 @@ formatDeftranRepper([op,a],SEQflag) == formatDeftran(['IF,p,[op,b],[op, c]], SEQflag) a is ['LET,a,b] => formatDeftran(['LET,a,[op,b]],SEQflag) a is ['not,[op,a,b]] and (op1 := LASSOC(op,$pspadRelationAlist)) => - formatDeftran [op1,a,b] + formatDeftran([op1,a,b],SEQflag) a is ["return",n,r] => MEMQ(opOf r,'(true false)) => a ["return",n,[op,formatDeftran(r,SEQflag)]] diff --git a/src/interp/setvars.boot b/src/interp/setvars.boot index f0836086..35193b48 100644 --- a/src/interp/setvars.boot +++ b/src/interp/setvars.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -126,11 +126,11 @@ initializeSetVariables (setTree) == then FUNCALL( setData.setVar,"%initialize%") else sayMSG '" Function not implemented." st = 'INTEGER => - SET(setData.setVar, setData.setDef) + setDynamicBinding(setData.setVar, setData.setDef) st = 'STRING => - SET(setData.setVar, setData.setDef) + setDynamicBinding(setData.setVar, setData.setDef) st = 'LITERALS => - SET(setData.setVar, translateYesNo2TrueFalse setData.setDef) + setDynamicBinding(setData.setVar, translateYesNo2TrueFalse setData.setDef) st = 'TREE => initializeSetVariables(setData.setLeaf) @@ -217,8 +217,8 @@ set1(l,setTree) == st = 'STRING => arg2 := l.1 if arg2 = 'DEFAULT - then SET(setData.setVar, setData.setDef) - else if arg2 then SET(setData.setVar, arg2) + then setDynamicBinding(setData.setVar, setData.setDef) + else if arg2 then setDynamicBinding(setData.setVar, arg2) -- if so set or not a valid choice, then show option information if $displaySetValue or (null arg2) then displaySetOptionInformation(arg,setData) @@ -232,8 +232,8 @@ set1(l,setTree) == (null (upperlimit := setData.setLeaf.1) or num <= upperlimit) => num selectOption(l.1,['default,:setData.setLeaf],nil) if arg2 = 'DEFAULT - then SET(setData.setVar, setData.setDef) - else if arg2 then SET(setData.setVar, arg2) + then setDynamicBinding(setData.setVar, setData.setDef) + else if arg2 then setDynamicBinding(setData.setVar, arg2) -- if so set or not a valid choice, then show option information if $displaySetValue or (null arg2) then displaySetOptionInformation(arg,setData) @@ -245,14 +245,14 @@ set1(l,setTree) == -- validate the option, allowing the user to set the default if (arg2 := selectOption(l.1,['default,:setData.setLeaf],nil)) then if arg2 = 'DEFAULT - then SET(setData.setVar, translateYesNo2TrueFalse setData.setDef) + then setDynamicBinding(setData.setVar, translateYesNo2TrueFalse setData.setDef) else if arg2 = 'nobreak then useFastLinks true if arg2 = 'fastlinks then useFastLinks false arg2 := 'break - SET(setData.setVar, translateYesNo2TrueFalse arg2) + setDynamicBinding(setData.setVar, translateYesNo2TrueFalse arg2) -- if so set or not a valid choice, then show option information if $displaySetValue or (null arg2) then displaySetOptionInformation(arg,setData) @@ -779,7 +779,7 @@ countCache n == NULL IDENTP x => sayKeyedMsg("S2IF0007",[x]) $cacheAlist:= insertAlist(x,n,$cacheAlist) cacheCountName:= INTERNL(x,'";COUNT") - SET(cacheCountName,n) + setDynamicBinding(cacheCountName,n) sayCacheCount(x,n) optionError(CAAR $options,nil) sayCacheCount(nil,$cacheCount:= n) diff --git a/src/interp/sfsfun.boot b/src/interp/sfsfun.boot index 2496d99c..d6b251e4 100644 --- a/src/interp/sfsfun.boot +++ b/src/interp/sfsfun.boot @@ -75,7 +75,7 @@ FloatError(formatstring,arg) == ERROR FORMAT([],formatstring,arg) nangenericcomplex () == - 1.0/COMPLEX(0.0) + COMPLEX NaNQ() diff --git a/src/interp/slam.boot b/src/interp/slam.boot index 705f235f..835c74f6 100644 --- a/src/interp/slam.boot +++ b/src/interp/slam.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -48,7 +48,7 @@ reportFunctionCompilation(op,nam,argl,body,isRecursive) == body := SUBST(minivectorName,"$$$",body) if $compilingInputFile then $minivectorCode := [:$minivectorCode,minivectorName] - SET(minivectorName,LIST2REFVEC $minivector) + setDynamicBinding(minivectorName,LIST2REFVEC $minivector) argl := COPY argl -- play it safe for optimization init := not(isRecursive and $compileRecurrence and #argl = 1) => nil @@ -306,7 +306,7 @@ clearLocalModemaps x == if def:= get(fn,'definition,$e) then $e:= putHist(x,'value,objNew(def,$EmptyMode),$e) if cacheVec:= get(fn,'cacheInfo,$e) then - SET(cacheVec.cacheName,NIL) + setDynamicBinding(cacheVec.cacheName,NIL) -- now clear the property list of the identifier $e := addIntSymTabBinding(x,nil,$e) sayKeyedMsg("S2IX0007",[x]) @@ -330,7 +330,7 @@ clearAllSlams x == fn(thoseToClear,thoseCleared) == for x in thoseToClear | not MEMQ(x,thoseCleared) repeat slamListName:= mkCacheName x - SET(slamListName,nil) + setDynamicBinding(slamListName,nil) thoseCleared:= ADJOIN(x,thoseCleared) someMoreToClear:= setDifference(LASSOC(x,$functorDependencyAlist),[:thoseToClear,: @@ -339,4 +339,4 @@ clearAllSlams x == clearSlam("functor")== id:= mkCacheName functor - SET(id,nil) + setDynamicBinding(id,nil) diff --git a/src/interp/sys-constants.boot b/src/interp/sys-constants.boot index a644e2b6..5540a575 100644 --- a/src/interp/sys-constants.boot +++ b/src/interp/sys-constants.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -37,8 +37,7 @@ -- the interpreter or the compiler or both. -- -import '"boot-pkg" - +import '"types" )package "BOOT" @@ -449,7 +448,6 @@ $CategoryNames == RecordCategory _ Join _ EnumerationCategory _ - StringCategory _ SubsetCategory _ UnionCategory) @@ -457,20 +455,16 @@ $CategoryNames == ++ database. So, they are mostly recognized by their names. ++ See also $CategoryNames. $DomainNames == - '(Integer _ - Float _ - Symbol _ - Boolean _ - String _ - Expression _ - Mapping _ + '(Mapping _ SubDomain _ - List _ Union _ Record _ - Vector _ Enumeration) +++ The union of the above two lists. +$BuiltinConstructorNames == + [:$CategoryNames,:$DomainNames] + ++ List of language support constructor forms. $LangSupportTypes == '((Mode) (Domain) (Type) (Category)) @@ -490,15 +484,11 @@ $PrimitiveDomainNames == String _ Boolean) -++ FIXME +++ These symbols are not constructor names, but they define domains. $SpecialDomainNames == '(add _ CAPSULE _ - SubDomain _ - List _ - Union _ - Record _ - Vector) + SubDomain) $optimizableConstructorNames == @@ -529,15 +519,6 @@ $underDomainAlist == nil -++ List of constructors that do not have entries in the databases. -++ See also $CategoryNames and $DomainNames. -$ConstructorNames == - '(SubDomain _ - List _ - Union _ - Record _ - Vector) - ++ A list of functors that do not really have modemaps $DummyFunctorNames == '(Mapping _[_|_|_]) @@ -605,7 +586,7 @@ IDENTITY == function IDENTITY +++ -_*INDEX_-FILENAME_* == +$IndexFilename == '"index.KAF" ++ diff --git a/src/interp/sys-driver.boot b/src/interp/sys-driver.boot index f1a39c85..3eda1fa6 100644 --- a/src/interp/sys-driver.boot +++ b/src/interp/sys-driver.boot @@ -36,7 +36,7 @@ -- both the OpenAxiom compiler and interpreter. -- -import '"boot-pkg" +import '"types" )package "BOOT" ++ true means try starting an open server @@ -57,18 +57,14 @@ $PrintCompilerMessageIfTrue := $verbose ++ $options := [] -$OpenAxiomCoreModuleLoaded := false - +++ Initialization routine run by the core system before handing off +++ to the interpreter or compiler. +++ ??? This part is still in flux. AxiomCore::%sysInit() == SETQ(_*PACKAGE_*, FIND_-PACKAGE '"BOOT") initMemoryConfig() - if not (%hasFeature KEYWORD::GCL or $OpenAxiomCoreModuleLoaded) then - loadNativeModule CONCAT(systemRootDirectory(), - '"lib/libopen-axiom-core.so") - $OpenAxiomCoreModuleLoaded := true + if not (%hasFeature KEYWORD::GCL) then + loadSystemRuntimeCore() )if %hasFeature KEYWORD::GCL SETQ(COMPILER::_*COMPILE_-VERBOSE_*,false) SETQ(COMPILER::_*SUPPRESS_-COMPILER_-WARNINGS_*,true) @@ -76,32 +72,19 @@ AxiomCore::%sysInit() == )endif -+++ Returns the root directory of the running system. -+++ A directory specified on command line takes precedence -+++ over directory specified at configuration time. -systemRootDirectory() == - dir := ASSOC(Option '"system", %systemOptions()) => - ensureTrailingSlash cdr dir - $systemInstallationDirectory - -+++ Returns the system algebra directory, as specified on command -+++ line. nil, otherwise. +++ Returns the system algebra directory, as specified on command +++ line. nil, otherwise. systemAlgebraDirectory() == dir := ASSOC(Option '"sysalg", %systemOptions()) => - ensureTrailingSlash cdr dir + ensureTrailingSlash rest dir nil -+++ Returns a path to the directory containing algebra bootstsrap files. +++ Returns a path to the directory containing algebra bootstsrap files. algebraBootstrapDir() == dir := ASSOC(Option '"strap",%systemOptions()) => ensureTrailingSlash rest dir nil -++ stdStreamIsTerminal: -++ returns 1 if the standard stream is attached to a terminal; -++ otherwise 0. -import stdStreamIsTerminal for std__stream__is__terminal: int -> int - ++ Load list of exposed categories, domains, and packages. ++ User-specified list takes precedence over system wide list. loadExposureGroupData() == diff --git a/src/interp/sys-globals.boot b/src/interp/sys-globals.boot index b6e28dee..fc922a64 100644 --- a/src/interp/sys-globals.boot +++ b/src/interp/sys-globals.boot @@ -357,7 +357,7 @@ $libraryDirectory := "A" $listingDirectory := "A" ++ -$texOutputStream := MAKE_-SYNONYM_-STREAM '_*TERMINAL_-IO_* +$texOutputStream := MAKE_-SYNONYM_-STREAM '_*STANDARD_-OUTPUT_* ++ $UserLevel := "development" diff --git a/src/interp/sys-macros.lisp b/src/interp/sys-macros.lisp index 5b433a37..0f05af3b 100644 --- a/src/interp/sys-macros.lisp +++ b/src/interp/sys-macros.lisp @@ -1,6 +1,6 @@ -;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. ;; All rights reserved. -;; Copyright (C) 2007, Gabriel Dos Reis. +;; Copyright (C) 2007-2008, Gabriel Dos Reis. ;; All rights reserved. ;; ;; Redistribution and use in source and binary forms, with or without @@ -15,7 +15,7 @@ ;; the documentation and/or other materials provided with the ;; distribution. ;; -;; - Neither the name of The Numerical ALgorithms Group Ltd. nor the +;; - Neither the name of The Numerical Algorithms Group Ltd. nor the ;; names of its contributors may be used to endorse or promote products ;; derived from this software without specific prior written permission. ;; @@ -1257,7 +1257,7 @@ ;; (defmacro |shoeConsole| (line) - `(write-line ,line *terminal-io*)) + `(write-line ,line *standard-output*)) (defmacro |shoeInputFile| (filespec) `(open ,filespec :direction :input :if-does-not-exist nil)) diff --git a/src/interp/sys-os.boot b/src/interp/sys-os.boot index b8125f80..64d27abd 100644 --- a/src/interp/sys-os.boot +++ b/src/interp/sys-os.boot @@ -1,4 +1,4 @@ --- Copyright (C) 2007-2008 Gabriel Dos Reis +-- Copyright (C) 2007-2008 Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without @@ -38,11 +38,15 @@ -- supporting C runtime libopen-axiom-core. -- -import '"boot-pkg" +import '"types" import '"cfuns" import '"sockio" )package "BOOT" +)if not %hasFeature KEYWORD::GCL +loadSystemRuntimeCore() +)endif + ++ change current working directory. import changeDirectory for oa__chdir: string -> int -- 0: success, -1: failure @@ -108,6 +112,9 @@ import directoryp for import writeablep for writeablep: string -> int +import runCommand for + oa__system: string -> int + ++ run a program with specified arguments runProgram(prog,args) == )if %hasFeature KEYWORD::GCL @@ -141,7 +148,9 @@ $plusInfinity == SB_-EXT::DOUBLE_-FLOAT_-POSITIVE_-INFINITY $minusInfinity == SB_-EXT::DOUBLE_-FLOAT_-NEGATIVE_-INFINITY )else -$plusInfinity == 1.1 * MOST_-POSITIVE_-LONG_-FLOAT() +-- In general Common Lisp does not provide support for infinities +-- and the like. +$plusInfinity == MOST_-POSITIVE_-DOUBLE_-FLOAT $minusInfinity == -$plusInfinity )endif @@ -153,3 +162,11 @@ plusInfinity() == minusInfinity() == $minusInfinity )endif + +++ stdStreamIsTerminal: +++ returns 1 if the standard stream is attached to a terminal; +++ otherwise 0. +import stdStreamIsTerminal for std__stream__is__terminal: int -> int + + +--% diff --git a/src/interp/sys-utility.boot b/src/interp/sys-utility.boot index 8c80701d..f422d993 100644 --- a/src/interp/sys-utility.boot +++ b/src/interp/sys-utility.boot @@ -1,4 +1,4 @@ --- Copyright (C) 2007-2008 Gabriel Dos Reis +-- Copyright (C) 2007-2008 Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without @@ -37,35 +37,19 @@ import '"sys-os" import '"vmlisp" )package "BOOT" -++ Basic types used throughout Boot codes. -%Boolean <=> BOOLEAN -%Short <=> FIXNUM -%Integer <=> BIGNUM -%Symbol <=> SYMBOL -%String <=> STRING -%List <=> LIST -%Vector <=> VECTOR -%Thing <=> true -%Sequence <=> SEQUENCE - ---% Data structures for the compiler -%Form <=> NUMBER or %Symbol or %String or CONS -- input syntax form -%Env <=> %List -- compiling env -%Mode <=> %Symbol or %String or %List -- type of forms -%Code <=> %Form -- generated code -%Triple <=> %List -- form + type + env - -%Modemap <=> %List -- modemap +setDynamicBinding: (%Symbol,%Thing) -> %Thing +setDynamicBinding(s,v) == + SETF(SYMBOL_-VALUE s,v) ++ returns true if `f' is bound to a macro. macrop: %Thing -> %Boolean macrop f == - IDENTP f and MACRO_-FUNCTION f + IDENTP f and not null MACRO_-FUNCTION f ++ returns true if `f' is bound to a function functionp: %Thing -> %Boolean functionp f == - IDENTP f => FBOUNDP f and not MACRO_-FUNCTION f + IDENTP f => FBOUNDP f and null MACRO_-FUNCTION f FUNCTIONP f ++ remove `item' from `sequence'. @@ -159,6 +143,7 @@ existingFile? file == ++ original version returned 0 on success, and 1 on failure ++ ??? fix that to return -1 on failure. +$ERASE: %Thing -> %Short $ERASE(:filearg) == -removeFile MAKE_-FULL_-NAMESTRING filearg @@ -176,10 +161,6 @@ checkMkdir path == getSystemModulePath m == CONCAT(systemRootDirectory(),'"algebra/",m,'".",$faslType) -++ Load native dynamically linked module -loadNativeModule m == -)if %hasFeature KEYWORD::SBCL - SB_-ALIEN::LOAD_-SHARED_-OBJECT m -)else - systemError '"don't know how to load a dynamically link module" -)endif +--% numericis +log10 x == + LOG(x,10) diff --git a/src/interp/template.boot b/src/interp/template.boot index c9c7f487..9529869d 100644 --- a/src/interp/template.boot +++ b/src/interp/template.boot @@ -121,16 +121,16 @@ evalSlotDomain(u,dollar) == -- Loadtime Operations --======================================================================= setLoadTime alist == - for [nam,:val] in alist repeat SET(nam,eval val) + for [nam,:val] in alist repeat setDynamicBinding(nam,eval val) setLoadTimeQ alist == - for [nam,:val] in alist repeat SET(nam,val) + for [nam,:val] in alist repeat setDynamicBinding(nam,val) makeTemplate vec == --called at instantiation time by setLoadTime --the form ['makeTemplate,MKQ $template] is recorded by compDefineFunctor1 -- $template is set below in NRTdescendCodeTran and NRTaddDeltaOpt - newVec := newDomainShell SIZE vec + newVec := newShell SIZE vec for index in 0..MAXINDEX vec repeat item := vec.index null item => nil @@ -192,7 +192,7 @@ putPredHash pred == --pred MUST have had addConsDB applied to it extendVectorSize v == n:= MAXINDEX v m:= (7*n)/5 -- make 40% longer - newVec := newDomainShell m + newVec := newShell m for i in 0..n repeat newVec.i := v.i newVec @@ -200,7 +200,7 @@ mkSigPredVectors() == $predHash:= MAKE_-HASHTABLE 'UEQUAL $consDB:= MAKE_-HASHTABLE 'UEQUAL $predVectorFrontier:= 1 --slot 0 in vector will be vacant - $predVector:= newDomainShell 100 + $predVector:= newShell 100 for nam in allConstructors() | null (GETDATABASE(nam, 'CONSTRUCTORKIND) = 'package) repeat for [op,:sigList] in GETDATABASE(nam,'OPERATIONALIST) repeat @@ -210,7 +210,7 @@ mkSigPredVectors() == 'done list2LongerVec(u,n) == - vec := newDomainShell ((7*n)/5) -- make 40% longer + vec := newShell ((7*n)/5) -- make 40% longer for i in 0.. for x in u repeat vec.i := x vec diff --git a/src/interp/trace.boot b/src/interp/trace.boot index d25c4506..b6ba828b 100644 --- a/src/interp/trace.boot +++ b/src/interp/trace.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -229,15 +229,15 @@ traceOptionError(opt,keys) == resetTimers () == for timer in _/TIMERLIST repeat - SET(INTERN STRCONC(timer,'"_,TIMER"),0) + setDynamicBinding(INTERN STRCONC(timer,'"_,TIMER"),0) resetSpacers () == for spacer in _/SPACELIST repeat - SET(INTERN STRCONC(spacer,'"_,SPACE"),0) + setDynamicBinding(INTERN STRCONC(spacer,'"_,SPACE"),0) resetCounters () == for k in _/COUNTLIST repeat - SET(INTERN STRCONC(k,'"_,COUNT"),0) + setDynamicBinding(INTERN STRCONC(k,'"_,COUNT"),0) ptimers() == null _/TIMERLIST => sayBrightly '" no functions are timed" @@ -276,7 +276,7 @@ domainToGenvar x == $doNotAddEmptyModeIfTrue: local:= true (y:= unabbrevAndLoad x) and GETDATABASE(opOf y,'CONSTRUCTORKIND) = 'domain => g:= genDomainTraceName y - SET(g,evalDomain y) + setDynamicBinding(g,evalDomain y) g genDomainTraceName y == diff --git a/src/interp/types.boot b/src/interp/types.boot new file mode 100644 index 00000000..7d2b6538 --- /dev/null +++ b/src/interp/types.boot @@ -0,0 +1,56 @@ +-- Copyright (C) 2007-2008 Gabriel Dos Reis +-- All rights reserved. +-- +-- Redistribution and use in source and binary forms, with or without +-- modification, are permitted provided that the following conditions are +-- met: +-- +-- - Redistributions of source code must retain the above copyright +-- notice, this list of conditions and the following disclaimer. +-- +-- - Redistributions in binary form must reproduce the above copyright +-- notice, this list of conditions and the following disclaimer in +-- the documentation and/or other materials provided with the +-- distribution. +-- +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the +-- names of its contributors may be used to endorse or promote products +-- derived from this software without specific prior written permission. +-- +-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS +-- IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +-- TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +-- PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER +-- OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +-- EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +-- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +-- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +-- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +-- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +-- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +-- +-- + +import '"boot-pkg" +)package "BOOT" + +++ Basic types used throughout Boot codes. +%Boolean <=> BOOLEAN +%Short <=> FIXNUM +%Integer <=> BIGNUM +%Symbol <=> SYMBOL +%String <=> STRING +%List <=> LIST +%Vector <=> VECTOR +%Thing <=> true +%Sequence <=> SEQUENCE + +--% Data structures for the compiler +%Form <=> NUMBER or %Symbol or %String or CONS -- input syntax form +%Env <=> %List -- compiling env +%Mode <=> %Symbol or %String or %List -- type of forms +%Code <=> %Form -- generated code +%Triple <=> %List -- form + type + env + +%Modemap <=> %List -- modemap + diff --git a/src/interp/unlisp.lisp b/src/interp/unlisp.lisp index 146a27ce..730e4d06 100644 --- a/src/interp/unlisp.lisp +++ b/src/interp/unlisp.lisp @@ -1,6 +1,6 @@ -;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. ;; All rights reserved. -;; Copyright (C) 2007, Gabriel Dos Reis. +;; Copyright (C) 2007-2008, Gabriel Dos Reis. ;; All rights reserved. ;; ;; Redistribution and use in source and binary forms, with or without @@ -15,7 +15,7 @@ ;; the documentation and/or other materials provided with the ;; distribution. ;; -;; - Neither the name of The Numerical ALgorithms Group Ltd. nor the +;; - Neither the name of The Numerical Algorithms Group Ltd. nor the ;; names of its contributors may be used to endorse or promote products ;; derived from this software without specific prior written permission. ;; @@ -146,7 +146,3 @@ (if pr (remove pr l :test #'eq) l) )) - -;; CCL supplies a slightly more efficient version of logs to base 10, which -;; is useful in the WIDTH function. MCD. -#+:KCL (defun log10 (u) (log u 10)) diff --git a/src/interp/util.lisp b/src/interp/util.lisp index 92b17621..0dde67ad 100644 --- a/src/interp/util.lisp +++ b/src/interp/util.lisp @@ -88,7 +88,7 @@ (|ensureTrailingSlash| (if (string= direc "") current-dir - (concat (|ensureTrailingSlash| current-dir direc)))))) + (concat (|ensureTrailingSlash| current-dir) direc))))) ;; Various lisps use different ``extensions'' on the filename to indicate ;; that a file has been compiled. We set this variable correctly depending diff --git a/src/interp/vmlisp.lisp b/src/interp/vmlisp.lisp index db6fc45b..fe3bb374 100644 --- a/src/interp/vmlisp.lisp +++ b/src/interp/vmlisp.lisp @@ -58,9 +58,9 @@ (defvar *embedded-functions* nil) -(defvar errorinstream (make-synonym-stream '*terminal-io*)) +(defvar errorinstream (make-synonym-stream '*query-io*)) -(defvar erroroutstream (make-synonym-stream '*terminal-io*)) +(defvar erroroutstream (make-synonym-stream '*query-io*)) (defvar *fileactq-apply* nil "function to apply in fileactq") @@ -1042,22 +1042,6 @@ ; 17.1 Creation -#-AKCL -(defun concat (a b &rest l) - (let ((type (cond ((bit-vector-p a) 'bit-vector) (t 'string)))) - (cond ((eq type 'string) - (setq a (string a) b (string b)) - (if l (setq l (mapcar #'string l))))) - (if l (apply #'concatenate type a b l) - (concatenate type a b))) ) -#+AKCL -(defun concat (a b &rest l) - (if (bit-vector-p a) - (if l (apply #'concatenate 'bit-vector a b l) - (concatenate 'bit-vector a b)) - (if l (apply #'system:string-concatenate a b l) - (system:string-concatenate a b)))) - (define-function 'strconc #'concat) (defun make-cvec (sint) (make-array sint :fill-pointer 0 :element-type 'character)) @@ -1075,8 +1059,8 @@ (defun QENUM (cvec ind) (char-code (char cvec ind))) -(defun QESET (cvec ind charnum) - (setf (char cvec ind) (code-char charnum))) +(defun QESET (cvec ind c) + (setf (char cvec ind) c)) (defun string2id-n (cvec sint) (if (< sint 1) @@ -1551,14 +1535,14 @@ (defun MAKE-INSTREAM (filespec &optional (recnum 0)) (declare (ignore recnum)) - (cond ((numberp filespec) (make-synonym-stream '*terminal-io*)) + (cond ((numberp filespec) (make-synonym-stream '*standard-input*)) ((null filespec) (error "not handled yet")) (t (open (make-input-filename filespec) :direction :input :if-does-not-exist nil)))) (defun MAKE-OUTSTREAM (filespec &optional (width nil) (recnum 0)) (declare (ignore width) (ignore recnum)) - (cond ((numberp filespec) (make-synonym-stream '*terminal-io*)) + (cond ((numberp filespec) (make-synonym-stream '*standard-output*)) ((null filespec) (error "not handled yet")) (t (open (make-filename filespec) :direction :output :if-exists :supersede)))) @@ -1567,7 +1551,7 @@ "fortran support" (declare (ignore width) (ignore recnum)) (cond - ((numberp filespec) (make-synonym-stream '*terminal-io*)) + ((numberp filespec) (make-synonym-stream '*standard-output*)) ((null filespec) (error "make-appendstream: not handled yet")) ('else (open (make-filename filespec) :direction :output :if-exists :append :if-does-not-exist :create)))) @@ -1831,7 +1815,7 @@ #+:cmulisp (defun gcmsg (x) (prog1 ext:*gc-verbose* (setq ext:*gc-verbose* x))) -#+ (or :allegro :sbcl) +#+ (or :allegro :sbcl :clisp) (defun gcmsg (x)) #+Lucid @@ -1881,7 +1865,7 @@ (intern (symbol-name (symbol-function x)) "BOOT") nil)) -#+:SBCL +#+(or :SBCL :clisp) (defun BPINAME (x) (multiple-value-bind (l c n) (function-lambda-expression x) diff --git a/src/interp/wi1.boot b/src/interp/wi1.boot index cee264b1..91aab6ab 100644 --- a/src/interp/wi1.boot +++ b/src/interp/wi1.boot @@ -1,4 +1,4 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. +-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. -- Copyright (C) 2007-2008, Gabriel Dos Reis. -- All rights reserved. @@ -15,7 +15,7 @@ -- the documentation and/or other materials provided with the -- distribution. -- --- - Neither the name of The Numerical ALgorithms Group Ltd. nor the +-- - Neither the name of The Numerical Algorithms Group Ltd. nor the -- names of its contributors may be used to endorse or promote products -- derived from this software without specific prior written permission. -- @@ -1088,7 +1088,7 @@ compDefine1(form,m,e) == ['DEF,lhs,signature,specialCases,rhs]:= form:= macroExpand(form,e) $insideWhereIfTrue and isMacro(form,e) and (m=$EmptyMode or m=$NoValueMode) => [lhs,m,put(first lhs,'macro,rhs,e)] - null signature.target and not MEMQ(KAR rhs,$ConstructorNames) and + null signature.target and not MEMQ(KAR rhs,$BuiltinConstructorNames) and (sig:= getSignatureFromMode(lhs,e)) => -- here signature of lhs is determined by a previous declaration compDefine1(['DEF,lhs,[first sig,:rest signature],specialCases,rhs],m,e) diff --git a/src/interp/wi2.boot b/src/interp/wi2.boot index 2fe55053..52999f36 100644 --- a/src/interp/wi2.boot +++ b/src/interp/wi2.boot @@ -1161,7 +1161,7 @@ doItLet1 item == then NRTgetLocalIndex $Representation --+ $LocalDomainAlist:= --see genDeltaEntry - [[lhs,:SUBLIS($LocalDomainAlist,get(lhs,'value,$e).0)],:$LocalDomainAlist] + [[lhs,:SUBLIS($LocalDomainAlist,(get(lhs,'value,$e)).0)],:$LocalDomainAlist] --+ qe(6,$e) code is ['LET,:.] => |