Index: src/interp/spaderror.lisp.pamphlet =================================================================== --- src/interp/spaderror.lisp.pamphlet (wersja 636) +++ src/interp/spaderror.lisp.pamphlet (kopia robocza) @@ -48,14 +48,14 @@ ;; this files contains basic routines for error handling (in-package "BOOT") - +#| #+(or :GCL :CCL) (defun error-format (message args) (let ((|$BreakMode| '|break|)) (declare (special |$BreakMode|)) (if (stringp message) (apply #'format nil message args) nil))) +|# -#-(or :GCL :CCL) (defun error-format (c) (let ((|$BreakMode| '|break|)) (declare (special |$BreakMode|)) @@ -79,6 +79,7 @@ ;; following macro evaluates form returning Union(type-of form, "failed") +#| #+:GCL (defmacro |trapNumericErrors| (form) `(let ((|$oldBreakMode| |$BreakMode|) @@ -87,8 +88,8 @@ (setq val (catch '|trapNumerics| ,form)) (if (eq val |$numericFailure|) val (cons 0 val)))) +|# -#-(or :GCL :CCL) (defmacro |trapNumericErrors| (form) `(handler-case (cons 0 ,form) (arithmetic-error () |$numericFailure|))) @@ -99,7 +100,6 @@ ;; (setq val (errorset ,form)) ;; (if (NULL val) |$numericFailure| (cons 0 (car val))))) -#-(or :GCL :CCL) (defun spad-system-error-handler (c) (block nil (setq |$NeedToSignalSessionManager| T) @@ -115,7 +115,7 @@ (throw '|letPrint2| nil)))))) - +#| ;; the following form embeds around the akcl error handler #+:GCL (eval-when @@ -148,6 +148,7 @@ (apply system:universal-error-handler type correctable? op continue-string error-string args ))))) +|# @@ -156,7 +157,6 @@ - @ \eject \begin{thebibliography}{99} Index: src/interp/interp-proclaims.lisp =================================================================== --- src/interp/interp-proclaims.lisp (wersja 636) +++ src/interp/interp-proclaims.lisp (kopia robocza) @@ -2,6 +2,8 @@ (progn (eval-when (:execute :compile-toplevel :load-toplevel) (proclaim '(optimize (safety 1)))) +(eval-when (:execute :compile-toplevel :load-toplevel) + (setf si::*disable-recompile* t)) (IN-PACKAGE "USER") (PROCLAIM '(FTYPE (FUNCTION (*) (VALUES T T)) BOOT:|ReadLine|)) (PROCLAIM Index: src/interp/Makefile.pamphlet =================================================================== --- src/interp/Makefile.pamphlet (wersja 636) +++ src/interp/Makefile.pamphlet (kopia robocza) @@ -922,6 +922,7 @@ @ echo 3 making ${DEPSYS} @ $(mkinstalldirs) $(axiom_build_bindir) @ echo '${PROCLAIMS}' > makedep.lisp + echo '(setf si::*disable-recompile* t)' >> makedep.lisp @ echo '(push :oldboot *features*)' >> makedep.lisp @ echo '(load "nocompil.lisp")' >> makedep.lisp @ echo '(load "bookvol5.lisp")' >> makedep.lisp Index: src/interp/Makefile.in =================================================================== --- src/interp/Makefile.in (wersja 636) +++ src/interp/Makefile.in (kopia robocza) @@ -453,6 +453,7 @@ @ echo 3 making ${DEPSYS} @ $(mkinstalldirs) $(axiom_build_bindir) @ echo '${PROCLAIMS}' > makedep.lisp + echo '(setf si::*disable-recompile* t)' >> makedep.lisp @ echo '(push :oldboot *features*)' >> makedep.lisp @ echo '(load "nocompil.lisp")' >> makedep.lisp @ echo '(load "bookvol5.lisp")' >> makedep.lisp Index: src/interp/bookvol5.pamphlet =================================================================== --- src/interp/bookvol5.pamphlet (wersja 636) +++ src/interp/bookvol5.pamphlet (kopia robocza) @@ -682,9 +682,6 @@ (setq |$currentLine| nil) (restart0) (|readSpadProfileIfThere|) - #+(or :GCL :CCL) - (|spad|) - #-(or :GCL :CCL) (handler-bind ((error #'spad-system-error-handler)) (|spad|)) ) @@ -1021,6 +1018,7 @@ (rpages 1000) (hole 2000) ) ;; initialize AKCL memory allocation parameters + #| #+:AKCL (progn (system:allocate 'cons cons) @@ -1034,6 +1032,7 @@ (system:allocate-relocatable-pages rpages) (system:set-hole-size hole)) #-:AKCL + |# nil) @ Index: src/interp/nruncomp.boot.pamphlet =================================================================== --- src/interp/nruncomp.boot.pamphlet (wersja 636) +++ src/interp/nruncomp.boot.pamphlet (kopia robocza) @@ -224,7 +224,7 @@ NULL x => x x = $NRTaddForm => 5 k := or/[i for i in 1.. for y in $NRTdeltaList - | y.0 = 'domain and y.1 = x and ($found := y)] => + | CAR(y) = 'domain and NTH(1, y) = x and ($found := y)] => $NRTbase + $NRTdeltaLength - k nil Index: src/lisp/axiom-lisp.lisp.pamphlet =================================================================== --- src/lisp/axiom-lisp.lisp.pamphlet (wersja 636) +++ src/lisp/axiom-lisp.lisp.pamphlet (kopia robocza) @@ -19,8 +19,8 @@ :use (list (or (find-package "COMMON-LISP") "LISP"))))) - (in-package "AXIOM-LISP") +;;; (shadow 'elt) (do-symbols (x "AXIOM-LISP") (export (list x))) (export '(quit chdir |getEnv| |load_quietly| get-current-directory @@ -31,11 +31,17 @@ (progn (import '(LISP::LAMBDA-CLOSURE)) (export '(LISP::LAMBDA-CLOSURE)) + (setq si::*disable-recompile* t) ) @ <<*>>= (in-package "AXIOM-LISP") +#|(defun elt(x n) + (if (consp x) + (nth n x) + (COMMON-LISP::elt x n))) +|# #+:sbcl (progn (defvar *saved-terminal-io* *terminal-io*) @@ -271,8 +277,15 @@ ;;; gcl-2.6.7 (probe-file file)) |# -#+:GCL (if (not (equal (file-kind (namestring file)) -1)) - (truename file)) +#+:GCL (let* ((fk (file-kind (namestring file))) + (fname (trim-directory-name (namestring file))) + (dname (pad-directory-name fname))) + (cond + ((equal fk 1) + (truename dname)) + ((equal fk 0) + (truename fname)) + (t nil))) #+:sbcl (if (sb-unix::unix-file-kind file) (truename file)) #+:openmcl (probe-file file) #+:clisp(let* ((fname (trim-directory-name (namestring file))) Index: src/lisp/Makefile.in =================================================================== --- src/lisp/Makefile.in (wersja 636) +++ src/lisp/Makefile.in (kopia robocza) @@ -36,16 +36,19 @@ echo '(load "axiom-package.lisp")' \ '(setq compiler::*default-system-p* t)' \ '(compile-file "axiom-lisp.lisp")' | $(AXIOM_LISP) - echo '(compiler::link (quote ("axiom-package.lisp" "axiom-lisp.$(OBJEXT)")) "lisp" ' \ + echo '(compiler::link nil "prelisp" ' \ ' (format nil "(progn (let ((*load-path* (cons ~S *load-path*))'\ ' (si::*load-types* ~S))' \ ' (compiler::emit-fn t))' \ ' (when (fboundp (quote si::sgc-on))' \ - ' (si::sgc-on t))' \ + ' (si::sgc-on nil))' \ ' (setq compiler::*default-system-p* t))"' \ ' si::*system-directory* (quote (list ".lsp")))' \ ' "$(lisp_c_objects) @axiom_c_runtime_extra@")' \ | $(AXIOM_LISP) + echo '(setq si::*disable-recompile* t) (load "axiom-package.lisp") (load "axiom-lisp.$(OBJEXT)")' \ + '(in-package "AXIOM-LISP") (save-core "lisp$(EXEEXT)")' \ + | ./prelisp$(EXEEXT) $(INSTALL_PROGRAM) lisp$(EXEEXT) $(OUT) $(STAMP) $@ Index: src/lisp/Makefile.pamphlet =================================================================== --- src/lisp/Makefile.pamphlet (wersja 636) +++ src/lisp/Makefile.pamphlet (kopia robocza) @@ -81,16 +81,19 @@ echo '(load "axiom-package.lisp")' \ '(setq compiler::*default-system-p* t)' \ '(compile-file "axiom-lisp.lisp")' | $(AXIOM_LISP) - echo '(compiler::link (quote ("axiom-package.lisp" "axiom-lisp.$(OBJEXT)")) "lisp" ' \ + echo '(compiler::link nil "prelisp" ' \ ' (format nil "(progn (let ((*load-path* (cons ~S *load-path*))'\ ' (si::*load-types* ~S))' \ ' (compiler::emit-fn t))' \ ' (when (fboundp (quote si::sgc-on))' \ - ' (si::sgc-on t))' \ + ' (si::sgc-on nil))' \ ' (setq compiler::*default-system-p* t))"' \ ' si::*system-directory* (quote (list ".lsp")))' \ ' "$(lisp_c_objects) @axiom_c_runtime_extra@")' \ | $(AXIOM_LISP) + echo '(setq si::*disable-recompile* t) (load "axiom-package.lisp") (load "axiom-lisp.$(OBJEXT)")' \ + '(in-package "AXIOM-LISP") (save-core "lisp$(EXEEXT)")' \ + | ./prelisp$(EXEEXT) $(INSTALL_PROGRAM) lisp$(EXEEXT) $(OUT) $(STAMP) $@