From 3410911228671da46f91d840be5a7c30ddad1ee4 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Wed, 5 Sep 2007 16:26:04 +0000 Subject: * Makefile.pamphlet (depsys_lisp_macro_sources): Remove bootfuns.lisp from the list. (OBJS): Likewise. (AXIOMsys_noncompiled_lisp_sources): Likewise. (${DEPSYS}): Don't depend on bootfuns. Don't load it. (bootfuns.$(FASLEXT)): Remove. * Makefile.in: Regenerate. * setq.lisp.pamphlet: Move to sys-globals.boot. * bootfuns.lisp.pamphlet: Remove. --- src/interp/ChangeLog | 12 ++++ src/interp/Makefile.in | 15 ++--- src/interp/Makefile.pamphlet | 26 ++------- src/interp/bootfuns.lisp.pamphlet | 114 -------------------------------------- src/interp/bootlex.lisp.pamphlet | 4 +- src/interp/category.boot.pamphlet | 6 ++ src/interp/macros.lisp.pamphlet | 3 +- src/interp/nocompil.lisp.pamphlet | 8 +-- src/interp/setq.lisp.pamphlet | 2 - src/interp/sys-globals.boot | 5 +- 10 files changed, 35 insertions(+), 160 deletions(-) delete mode 100644 src/interp/bootfuns.lisp.pamphlet (limited to 'src') diff --git a/src/interp/ChangeLog b/src/interp/ChangeLog index b2ae9cd6..5a709b07 100644 --- a/src/interp/ChangeLog +++ b/src/interp/ChangeLog @@ -1,3 +1,15 @@ +2007-09-05 Gabriel Dos Reis + + * Makefile.pamphlet (depsys_lisp_macro_sources): Remove + bootfuns.lisp from the list. + (OBJS): Likewise. + (AXIOMsys_noncompiled_lisp_sources): Likewise. + (${DEPSYS}): Don't depend on bootfuns. Don't load it. + (bootfuns.$(FASLEXT)): Remove. + * Makefile.in: Regenerate. + * setq.lisp.pamphlet: Move to sys-globals.boot. + * bootfuns.lisp.pamphlet: Remove. + 2007-09-04 Gabriel Dos Reis * bootfuns.lisp.pamphlet (|$CategoryFrame|): Move to sys-globals.boot. diff --git a/src/interp/Makefile.in b/src/interp/Makefile.in index fc83f916..9567360f 100644 --- a/src/interp/Makefile.in +++ b/src/interp/Makefile.in @@ -39,7 +39,7 @@ DEP= nlib.lisp \ axext_l.lisp depsys_lisp_macro_sources = vmlisp.lisp ggreater.lisp hash.lisp \ - bootfuns.lisp union.lisp nlib.lisp macros.lisp \ + union.lisp nlib.lisp macros.lisp \ comp.lisp spaderror.lisp debug.lisp \ spad.lisp bits.lisp setq.lisp property.lisp \ unlisp.lisp foam_l.lisp axext_l.lisp @@ -54,7 +54,7 @@ DEBUGSYS=$(axiom_build_bindir)/debugsys$(EXEEXT) OBJS= vmlisp.$(FASLEXT) hash.$(FASLEXT) \ diagnostics.$(FASLEXT) \ - bootfuns.$(FASLEXT) macros.$(FASLEXT) \ + macros.$(FASLEXT) \ unlisp.$(FASLEXT) setq.$(FASLEXT) \ astr.$(FASLEXT) bits.$(FASLEXT) \ alql.$(FASLEXT) buildom.$(FASLEXT) \ @@ -110,7 +110,7 @@ OBJS= vmlisp.$(FASLEXT) hash.$(FASLEXT) \ interpsys_modules = $(patsubst %.$(FASLEXT), "%", $(OBJS)) -AXIOMsys_noncompiled_lisp_sources = bootfuns.lisp nocompil.lisp \ +AXIOMsys_noncompiled_lisp_sources = nocompil.lisp \ postprop.lisp property.lisp setq.lisp AXIOMsys_compiled_lisp_sources = bits.lisp \ @@ -296,7 +296,6 @@ makeint.lisp: ${DEPSYS} ${OBJS} bookvol5.$(FASLEXT) util.$(FASLEXT) \ $(axiom_target_datadir)/msgs @ echo '(|importModule| "vmlisp")' >> makeint.lisp @ echo '(|importModule| "hash")' >> makeint.lisp - @ echo '(|importModule| "bootfuns")' >> makeint.lisp @ echo '(gbc t)' >> makeint.lisp @ echo '(load "nocompil.lisp")' >> makeint.lisp @ echo '(|importModule| "bookvol5")' >> makeint.lisp @@ -348,7 +347,6 @@ ${DEPSYS}: vmlisp.$(FASLEXT) \ sys-constants.$(FASLEXT) \ sys-globals.$(FASLEXT) \ diagnostics.$(FASLEXT) \ - bootfuns.$(FASLEXT) \ ${DEP} \ nocompil.$(FASLEXT) \ bookvol5.$(FASLEXT)\ @@ -371,10 +369,9 @@ ${DEPSYS}: vmlisp.$(FASLEXT) \ @ echo '(|importModule| "hash")' >> makedep.lisp @ echo '(|importModule| "ggreater")' >> makedep.lisp @ echo '(|importModule| "union")' >> makedep.lisp - @ echo '(|importModule| "bootfuns")' >> makedep.lisp @ echo '(|importModule| "nocompil")' >> makedep.lisp - @ echo '(|importModule| "bookvol5")' >> makedep.lisp @ echo '(|importModule| "parsing")' >> makedep.lisp + @ echo '(|importModule| "bookvol5")' >> makedep.lisp @ echo '(|importModule| "util")' >> makedep.lisp @ echo '(in-package "BOOT")' >> makedep.lisp @ echo '(build-depsys (quote ($(patsubst %, "%", ${DEP}))) "${AXIOM}")' >> makedep.lisp @@ -429,10 +426,6 @@ bookvol5.$(FASLEXT): bookvol5.lisp boot-pkg.$(FASLEXT) nocompil.$(FASLEXT): nocompil.lisp boot-pkg.$(FASLEXT) $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< -bootfuns.$(FASLEXT): bootfuns.lisp hash.$(FASLEXT) \ - sys-constants.$(FASLEXT) sys-globals.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< - diagnostics.$(FASLEXT): diagnostics.boot sys-constants.$(FASLEXT) \ sys-globals.$(FASLEXT) $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< diff --git a/src/interp/Makefile.pamphlet b/src/interp/Makefile.pamphlet index 694e808f..ac9fd061 100644 --- a/src/interp/Makefile.pamphlet +++ b/src/interp/Makefile.pamphlet @@ -157,12 +157,6 @@ The [[depsys]] image is made of the following Lisp source files \item[\File{hash.lisp}] This file defines a ``hash table'' module. Its content is defined in package [[VMLISP]]. - \item[\File{bootfuns.lisp}] This file collects forward references - of functions that are needed in the [[BOOT]] package, to be defined - latter. It is not at all clear that this file is needed to - build the Boot to Common Lisp translator. Its content is - defined in package [[BOOT]]. - \item[\File{union.lisp}] This file defines functions that compute set-theoretic operations (union, difference, intersection, etc.). Its content is in package [[VMLISP]]. @@ -283,7 +277,7 @@ DEP= nlib.lisp \ axext_l.lisp depsys_lisp_macro_sources = vmlisp.lisp ggreater.lisp hash.lisp \ - bootfuns.lisp union.lisp nlib.lisp macros.lisp \ + union.lisp nlib.lisp macros.lisp \ comp.lisp spaderror.lisp debug.lisp \ spad.lisp bits.lisp setq.lisp property.lisp \ unlisp.lisp foam_l.lisp axext_l.lisp @@ -330,9 +324,7 @@ 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. There are two exceptions, \File{bootfuns.lisp} -and \File{setq.lisp}. The \File{bootfuns.lisp} \cite{3} file -contains forward references for Boot code. The \File{setq.lisp} +compiled. The \File{setq.lisp} file contains constant initialization code which gains nothing by being compiled. @@ -348,7 +340,7 @@ interpreted) in [[depsys]]. <>= OBJS= vmlisp.$(FASLEXT) hash.$(FASLEXT) \ diagnostics.$(FASLEXT) \ - bootfuns.$(FASLEXT) macros.$(FASLEXT) \ + macros.$(FASLEXT) \ unlisp.$(FASLEXT) setq.$(FASLEXT) \ astr.$(FASLEXT) bits.$(FASLEXT) \ alql.$(FASLEXT) buildom.$(FASLEXT) \ @@ -404,7 +396,7 @@ OBJS= vmlisp.$(FASLEXT) hash.$(FASLEXT) \ interpsys_modules = $(patsubst %.$(FASLEXT), "%", $(OBJS)) -AXIOMsys_noncompiled_lisp_sources = bootfuns.lisp nocompil.lisp \ +AXIOMsys_noncompiled_lisp_sources = nocompil.lisp \ postprop.lisp property.lisp setq.lisp AXIOMsys_compiled_lisp_sources = bits.lisp \ @@ -996,7 +988,6 @@ ${DEPSYS}: vmlisp.$(FASLEXT) \ sys-constants.$(FASLEXT) \ sys-globals.$(FASLEXT) \ diagnostics.$(FASLEXT) \ - bootfuns.$(FASLEXT) \ ${DEP} \ nocompil.$(FASLEXT) \ bookvol5.$(FASLEXT)\ @@ -1019,10 +1010,9 @@ ${DEPSYS}: vmlisp.$(FASLEXT) \ @ echo '(|importModule| "hash")' >> makedep.lisp @ echo '(|importModule| "ggreater")' >> makedep.lisp @ echo '(|importModule| "union")' >> makedep.lisp - @ echo '(|importModule| "bootfuns")' >> makedep.lisp @ echo '(|importModule| "nocompil")' >> makedep.lisp - @ echo '(|importModule| "bookvol5")' >> makedep.lisp @ echo '(|importModule| "parsing")' >> makedep.lisp + @ echo '(|importModule| "bookvol5")' >> makedep.lisp @ echo '(|importModule| "util")' >> makedep.lisp @ echo '(in-package "BOOT")' >> makedep.lisp @ echo '(build-depsys (quote ($(patsubst %, "%", ${DEP}))) "${AXIOM}")' >> makedep.lisp @@ -1076,10 +1066,6 @@ bookvol5.$(FASLEXT): bookvol5.lisp boot-pkg.$(FASLEXT) nocompil.$(FASLEXT): nocompil.lisp boot-pkg.$(FASLEXT) $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< -bootfuns.$(FASLEXT): bootfuns.lisp hash.$(FASLEXT) \ - sys-constants.$(FASLEXT) sys-globals.$(FASLEXT) - $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< - diagnostics.$(FASLEXT): diagnostics.boot sys-constants.$(FASLEXT) \ sys-globals.$(FASLEXT) $(BOOTSYS) -- --compile --output=$@ --load-directory=. $< @@ -1159,7 +1145,6 @@ makeint.lisp: ${DEPSYS} ${OBJS} bookvol5.$(FASLEXT) util.$(FASLEXT) \ $(axiom_target_datadir)/msgs @ echo '(|importModule| "vmlisp")' >> makeint.lisp @ echo '(|importModule| "hash")' >> makeint.lisp - @ echo '(|importModule| "bootfuns")' >> makeint.lisp @ echo '(gbc t)' >> makeint.lisp @ echo '(load "nocompil.lisp")' >> makeint.lisp @ echo '(|importModule| "bookvol5")' >> makeint.lisp @@ -2300,7 +2285,6 @@ pp \begin{thebibliography}{99} \bibitem{1} \File{Makefile.pamphlet} \bibitem{2} \File{src/boot/Makefile.pamphlet} -\bibitem{3} \File{src/interp/bootfuns.lisp.pamphlet} \bibitem{4} \File{src/interp/setq.lisp.pamphlet} \bibitem{5} \File{src/interp/patches.lisp.pamphlet} \bibitem{6} {\bf www.aldor.org} diff --git a/src/interp/bootfuns.lisp.pamphlet b/src/interp/bootfuns.lisp.pamphlet deleted file mode 100644 index ed8b3dc0..00000000 --- a/src/interp/bootfuns.lisp.pamphlet +++ /dev/null @@ -1,114 +0,0 @@ -%% Oh Emacs, this is a -*- Lisp -*- file despite apperance. -\documentclass{article} -\usepackage{axiom} - -\title{\File{src/interp/bootfuns.lisp} Pamphlet} -\author{Timothy Daly} - -\begin{document} -\maketitle - -\begin{abstract} -\end{abstract} - -\tableofcontents -\eject - - -\section{License} - -<>= -;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. -;; 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. - -@ - - - -\section{The [[BOOT]] package} - -Everything in axiom that the user references eventually shows -up here. The interpreter and the algebra are run after switching -to the boot package (in-package "BOOT") so any symbol that the -interpreter or algebra uses has to (cough, cough) appear here. -<<*>>= -<> - -(IMPORT-MODULE "sys-constants") -(IMPORT-MODULE "sys-globals") - -@ - -Note that it is confusing the package \Tool{Axiom}'s compiler and -interpreter use is called [[BOOT]]. It should have been -[[Spad]], or better yet [[Axiom]]. - - - -\section{Portability issues} - -This section discusses some portability issues known to affect -this module. - -\subsection{[[compiler-let]]} - -The construct [[compiler-let]] is not part of ANSI Lisp, although -it had been described in CLTL. Therefore some Lisp implementations -offer it as extensions. - -<>= -#+:clisp (import 'ext:compiler-let) -@ - -<<*>>= - -; NAME: Boot Package -; PURPOSE: Provide forward references to Boot Code for functions to be at -; defined at the boot level, but which must be accessible -; not defined at lower levels. - -(in-package "BOOT") - -<> - -(defmacro def-boot-val (p val where) - `(compiler-let nil - (defparameter ,p ,val ,where) - (export '(,p) "BOOT"))) - - -(def-boot-val |$spadLibFT| 'LISPLIB "???") -@ -\eject -\begin{thebibliography}{99} -\bibitem{1} nothing -\end{thebibliography} -\end{document} diff --git a/src/interp/bootlex.lisp.pamphlet b/src/interp/bootlex.lisp.pamphlet index db7eaece..9913b93d 100644 --- a/src/interp/bootlex.lisp.pamphlet +++ b/src/interp/bootlex.lisp.pamphlet @@ -129,7 +129,6 @@ &aux (Echo-Meta t) ($BOOT T) - (|$InteractiveMode| NIL) (XCape #\_) (File-Closed NIL) (*EOF* NIL) @@ -137,6 +136,7 @@ (*fileactq-apply* (function print-defun)) (*comp370-apply* (function print-defun))) (declare (special echo-meta *comp370-apply* *EOF* File-Closed XCape)) + (setq |$InteractiveMode| NIL) (init-boot/spad-reader) (with-open-stream (in-stream (if *boot-input-file* (open *boot-input-file* :direction :input) @@ -177,7 +177,6 @@ ;; (*comp370-apply* (function print-and-eval-defun)) (*comp370-apply* (function print-defun)) (*fileactq-apply* (function print-defun)) - ;; (|$InteractiveMode| nil) ($SPAD T) ($BOOT nil) (XCape #\_) @@ -190,6 +189,7 @@ in-stream out-stream) (declare (special echo-meta /editfile *comp370-apply* *EOF* File-Closed Xcape |$noSubsumption|)) + (setq |$InteractiveMode| nil) ;; only rebind |$InteractiveFrame| if compiling (progv (if (not |$InteractiveMode|) '(|$InteractiveFrame|)) (if (not |$InteractiveMode|) diff --git a/src/interp/category.boot.pamphlet b/src/interp/category.boot.pamphlet index 88c1c635..0dfa2b45 100644 --- a/src/interp/category.boot.pamphlet +++ b/src/interp/category.boot.pamphlet @@ -601,6 +601,12 @@ JoinInner(l,$e) == if pName and not member(pName,c) then c:= [pName,:c] $NewCatVec.4:= [c,FundamentalAncestors,CADDR $NewCatVec.4] mkCategory("domain",sigl,attl,globalDomains,$NewCatVec) + +Join(:l) == + e := + (not BOUNDP '$e) or null $e or $InteractiveMode => $CategoryFrame + $e + JoinInner(l, e) --ProduceDomainAlist(u,e) == -- -- Gives a complete Alist for all the functions in the Domain diff --git a/src/interp/macros.lisp.pamphlet b/src/interp/macros.lisp.pamphlet index c17defdb..5437ae2d 100644 --- a/src/interp/macros.lisp.pamphlet +++ b/src/interp/macros.lisp.pamphlet @@ -140,8 +140,7 @@ ends up being [[CONTAINED |$EmptyMode| Y]]. <<*>>= <> -(provide 'Boot) - +(import-module "sys-constants") (in-package "BOOT") (defvar |$compilingMap| ()) diff --git a/src/interp/nocompil.lisp.pamphlet b/src/interp/nocompil.lisp.pamphlet index a3a3c980..6e7b6bf1 100644 --- a/src/interp/nocompil.lisp.pamphlet +++ b/src/interp/nocompil.lisp.pamphlet @@ -69,6 +69,7 @@ with this hack and will try to convince the GCL crowd to fix this. <> +(import-module "boot-pkg") (in-package "BOOT") (defun protected-symbol-warn (&rest arg)) @@ -89,13 +90,6 @@ with this hack and will try to convince the GCL crowd to fix this. #+:ccl (format t "protected-symbol-warn called with ~A~%" arg)) -;; NOTE: JoinInner is defined in CATEGORY BOOT -;; following code needs to run interpreted to overcome arglist length limits -(defun |Join| (&rest L) - (|JoinInner| L (if (OR (not (boundp '|$e|)) (NULL |$e|) |$InteractiveMode|) - |$CategoryFrame| - |$e|))) - @ \eject \begin{thebibliography}{99} diff --git a/src/interp/setq.lisp.pamphlet b/src/interp/setq.lisp.pamphlet index a9755811..ec909e6d 100644 --- a/src/interp/setq.lisp.pamphlet +++ b/src/interp/setq.lisp.pamphlet @@ -280,8 +280,6 @@ (SETQ |$CommandSynonymAlist| (COPY |$InitialCommandSynonymAlist|)) -(SETQ |$spadLibFT| 'LISPLIB) - (SETQ |$existingFiles| (MAKE-HASHTABLE 'UEQUAL)) (SETQ |$instantRecord| (MAKE-HASHTABLE 'ID)) diff --git a/src/interp/sys-globals.boot b/src/interp/sys-globals.boot index a31bf340..6ea1d04a 100644 --- a/src/interp/sys-globals.boot +++ b/src/interp/sys-globals.boot @@ -161,7 +161,7 @@ $instantRecord := MAKE_-HASHTABLE "ID" $InteractiveFrame := [[nil]] ++ -$InteractiveMode := true +$InteractiveMode := false ++ $InteractiveTimingStatsIfTrue := false @@ -333,3 +333,6 @@ $CategoryFrame := '((((Category (modemap (((Category) (Category)) (T *))))_ (Join (modemap (((Category) (Category) (Category)) (T *))_ (((Category) (Category) (List Category)) (T *))))))) + +++ +$spadLibFT := "NRLIB" -- cgit v1.2.3