diff --git a/books/bookvol5.pamphlet b/books/bookvol5.pamphlet index 4414f64..60c94d6 100644 --- a/books/bookvol5.pamphlet +++ b/books/bookvol5.pamphlet @@ -4,6 +4,83 @@ \usepackage{makeidx} \makeindex \usepackage{graphicx} +%% +%% Note that this file will eventually generate a dvi file +%% which will eventually be processed by dvipdfm to create a pdf. +%% The categories/domains/packages will be placed in a graphviz graph. +%% The graphviz dot syntax allows an href parameter. +%% The href parameter will reference this file. +%% pdf href syntax allows named destinations. +%% This macro creates a named destination using \special +%% Thus, you reference http://thispdf#nameddest=ABBREV +%% and you end up at the right page. +%% This macro is called implicitly by \pagehead so every +%% category/domain/package can be referenced by fullname or abbrev. +%% +%% dest will give the ability to use nameddest= in html pdfs +%% +\newcommand{\dest}[1]{% e.g. \dest{abb} +\special{pdf:dest (#1) [ @thispage /FitH @ypos ]}} + +%% +%% pagehead consolidates standard page indexing +%% +\newcommand{\pagehead}[2]{% e.g. \pagehead{name}{abb} +\dest{#1}% +\dest{#2}% +\subsection{#1 (#2)} +\label{#1}% +\label{#2}% +\index{{#1}}% +\index{{#2}}}% + +%% +%% pagepic adds an image and an index entry +%% +\newcommand{\pagepic}[3]{% e.g. \pagepic{pathandfile}{abb}{scale} +\includegraphics[scale=#3]{#1}\\% +\index{images!#2}} + +%% +%% \refto is a link to a referenced page that returns it arg +%% +\newcommand{\refto}[1]{% e.g. \refto{name} +(p\pageref{#1}) #1} + +%% +%% pageto is a forward link to a referenced page +%% +\newcommand{\pageto}[2]{% e.g. \pageto{abb}{name} +\ \\${\bf\Rightarrow{}}${``#1''} (#2) \ref{#1} on page~\pageref{#1}} + +%% +%% pagefrom is a backward link to a referencing page +%% +\newcommand{\pagefrom}[2]{% e.g. \pagefrom{name}{abb} +\ \\${\bf\Leftarrow{}}${``#1''} (#2) \ref{#1} on page~\pageref{#1}} + + +%% +%% fnref sets a reference link +%% +\newcommand{\fnref}[1]{% e.g. \fnref{functionname} +``#1'' (\ref{#1} p~\pageref{#1})} + +%% +%% varref sets a reference link +%% +\newcommand{\varref}[1]{% e.g. \varref{variablename} +``#1'' (\ref{#1} p~\pageref{#1})} + +%% cross will put the category and function in the index +%% cross will leave the funcname so it can be put inline. +%% +\newcommand{\cross}[2]{% e.g. \pagefrom{cat}{funcname} +\index{#1!#2}% +\index{#2!#1}% +#2} + + % struggle with latex figure-floating behavior \renewcommand\floatpagefraction{.9} \renewcommand\topfraction{.9} @@ -180,12 +257,10 @@ function which is the entry to the Axiom interpreter. ) @ -\subsection{defun restart} +\pagehead{restart}{restart} +\pagepic{ps/v5restart.ps}{restart}{1.00} The restart function is the real root of the world. It sets up memory -if we are working in a GCL/akcl version of the system. It sets the -current package to be the ``BOOT'' package which is the standard -package in which the interpreter runs. It calls initroot \cite{1} -to set the \$spadroot variable (usually the \$AXIOM variable). +if we are working in a GCL/akcl version of the system. The [[compiler::*compile-verbose*]] flag has been set to nil globally. We do not want to know about the microsteps of GCL's compile facility. @@ -195,6 +270,50 @@ We do not care that certain generated variables are not used. The [[compiler::*suppress-compiler-notes*]] flag has been set to t. We do not care that tail recursion occurs. + +It sets the +current package to be the ``BOOT'' package which is the standard +package in which the interpreter runs. + +The \fnref{initroot} function sets global variables that depend on the +AXIOM shell variable. These are needed to find basic files like s2-us.msgs, +which contains the error message text. + +The \fnref{openserver} function tried to set up the socket connection +used for things like hyperdoc. The \verb|$openServerIfTrue| variable +starts true, which implies trying to start a server. + +The \verb|$IOindex| variable is the number associated with the input prompt. +Every successful expression evaluated increments this number until a +\verb|)clear all| resets it. Here we set it to the initial value. + +Axiom has multiple frames that contain independent information about a +computation. There can be several frames at any one time and you can +shift back and forth between the frames. By default, the system starts +in ``frame0'' (try the \verb|)frame names| command). See the Frame +Mechanism chapter (\ref{TheFrameMechanism} page~\pageref{TheFrameMechanism}). + +The \verb|$InteractiveFrame| variable contains the state information +related to the current frame, which includes things like the last value, +the value of all of the variables, etc. + +The \varref{printLoadMsgs} variable controls whether load messages will +be output as library routines are loaded. We enable this by default. +It can be changed by using \verb|)set message autoload|. + +The \varref{current-directory} variable is set to the current directory. +This is used by the \verb|)cd| function and some of the compile routines. + +The \fnref{loadExposureGroupData} function initializes several variables +with the exposure groups. These lists limit the user visible names in +order to keep the user and interpreter from being confused by names +which are common but whose signatures are for internal algebra uses. + +The \fnref{statisticsInitialization} function initializes variables +used to collect statistics. Currently, only the garbage collector +information is initialized. + + <>= (defun restart () #+:akcl @@ -203,53 +322,22 @@ We do not care that tail recursion occurs. #+:akcl (setq compiler::*compile-verbose* nil) #+:akcl (setq compiler::*suppress-compiler-warnings* t) #+:akcl (setq compiler::*suppress-compiler-notes* t) -#-:CCL - (in-package "BOOT") -#+:CCL - (setq *package* (find-package "BOOT")) -#+:CCL (setpchar "") ;; Turn off CCL read prompts -#+(OR :akcl :CCL) (initroot) #+:akcl (system:gbc-time 0) + (in-package "BOOT") + (initroot) #+:akcl - (when (and $openServerIfTrue (fboundp '|openServer|)) - (prog (os) - (setq os (|openServer| $SpadServerName)) - (if (zerop os) - (progn - (setq $openServerIfTrue nil) - (setq |$SpadServer| t))))) -;; We do the following test at runtime to allow us to use the same images -;; with Saturn and Sman. MCD 30-11-95 -#+:CCL - (when - (and (memq :unix *features*) $openServerIfTrue (fboundp '|openServer|)) - (prog (os) - (setq os (|openServer| $SpadServerName)) - (if (zerop os) - (progn - (setq $openServerIfTrue nil) - (setq |$SpadServer| t))))) + (when (and $openServerIfTrue (zerop (openserver $SpadServerName))) + (setq $openServerIfTrue nil) + (setq |$SpadServer| t)) (setq |$IOindex| 1) (setq |$InteractiveFrame| (|makeInitialModemapFrame|)) (setq |$printLoadMsgs| t) -#+(and :lucid :ibm/370) - (setq *default-pathname-defaults* "") -#+:CCL - (setq *default-pathname-defaults* (get-current-directory)) -#-(or :CCL (and :lucid :ibm/370)) - (setq *default-pathname-defaults* (probe-file "./")) -#+(and :lucid :ibm/370) - (setq vmlisp::$current-directory "") -#-(and :lucid :ibm/370) - (setq vmlisp::$current-directory - (make-directory *default-pathname-defaults*)) + (setq $current-directory (get-current-directory)) (|loadExposureGroupData|) (|statisticsInitialization|) (|initHist|) (|initializeInterpreterFrameRing|) - - (when |$displayStartMsgs| - (|spadStartUpMsgs|)) + (when |$displayStartMsgs| (|spadStartUpMsgs|)) (setq |$currentLine| nil) (restart0) (|readSpadProfileIfThere|) @@ -571,10 +659,12 @@ This function performs those setup commands. @ -\subsection{defun initroot} +\pagehead{initroot}{initroot} Sets up the system to use the {\bf AXIOM} shell variable if we can and default to the {\bf \$spadroot} variable (which was the value of the {\bf AXIOM} shell variable at build time) if we can't. + +Called from \fnref{restart}. <>= (defun initroot (&optional (newroot (BOOT::|getEnv| "AXIOM"))) (reroot (or newroot $spadroot (error "setenv AXIOM or (setq $spadroot)")))) @@ -594,28 +684,6 @@ minus any leading spaces. newwhole)))) @ -\subsection{defun loadExposureGroupData} -<>= -#+:AKCL -(defun |loadExposureGroupData| () - (cond - ((load "./exposed" :verbose nil :if-does-not-exist nil) - '|done|) - ((load (concat (system:getenv "AXIOM") "/algebra/exposed") - :verbose nil :if-does-not-exist nil) - '|done|) - (t '|failed|) )) - -#+:CCL -(defun |loadExposureGroupData| () - (cond - ((load "./exposed.lsp" :verbose NIL :if-does-not-exist NIL) '|done|) - ((load (concat (BOOT::|getEnv| "AXIOM") "/../../src/algebra/exposed.lsp") - :verbose nil :if-does-not-exist nil) '|done|) - (t nil) )) - -@ - \subsection{make-absolute-filename} Prefix a filename with the {\bf AXIOM} shell variable. <>= @@ -691,16 +759,14 @@ where the [[${SYS}]] variable is the same one set at build time. <>= (defun reroot (dir) (setq $spadroot dir) + (setq $current-directory dir) (setq $directory-list (mapcar #'make-absolute-filename $relative-directory-list)) (setq $library-directory-list (mapcar #'make-absolute-filename $relative-library-directory-list)) (setq |$defaultMsgDatabaseName| (pathname (make-absolute-filename "/doc/msgs/s2-us.msgs"))) - (setq |$msgDatabaseName| ()) - (setq *default-pathname-defaults* - (pathname (make-absolute-filename ""))) - (setq $current-directory $spadroot)) + (setq |$msgDatabaseName| ())) @ @@ -734,7 +800,8 @@ this is what the current code does so I won't change it. @ -\subsection{defun statisticsInitialization} +\chapter{System Statistics} +\pagehead{statisticsInitialization}{statisticsInitialization} <>= (defun |statisticsInitialization| () "initialize the garbage collection timer" @@ -3506,8 +3573,8 @@ S2IH0038 \chapter{The Frame Mechanism} \section{)frame} -%\label{ugSysCmdframe} -%\index{frame} +\label{TheFrameMechanism} +\index{TheFrameMechanism} \par\noindent{\bf Command Syntax:} \begin{list}{} \item{\tt )frame new {\it frameName}} @@ -5188,6 +5255,14 @@ removeUndoLines u == --called by writeInputLines @ +\pagehead{openserver}{openserver} +This is a cover function for the C code used for communication interface. +<>= +(defun openserver (name) + (open_server name)) + +@ + \chapter{The Help Browser Mechanism} The Axiom book on the help browser is a complete rewrite of the hyperdoc mechanism. There are several components that were needed @@ -5457,12 +5532,60 @@ DEBUGSYS=${OBJ}/${SYS}/bin/debugsys @ +\chapter{Exposure Groups} +Exposure groups are a way of controlling the namespace available +to the user. Certain algebra files are only useful for internal +purposes but they contain functions have common names (like +``map''. In order to separate the user visible functions +from the internal functions the algebra files are collected into +``exposure groups''. These large groups are grouped into sets in +the file \verb|exposed.lsp| which lives in the algebra subdirectory. + +Exposure group information is kept in the local frame. For more +information ``The Frame Mechanism'' \ref{TheFrameMechanism} on +page~\pageref{TheFrameMechanism}. + +\pagehead{loadExposureGroupData}{loadExposureGroupData} +This function is called from \fnref{restart} at system startup time to +load the file \verb|exposed.lsp| to set up the exposure group information. +<>= +(defun |loadExposureGroupData| () + (cond + ((load "./exposed" :verbose nil :if-does-not-exist nil) + '|done|) + ((load (concat (system:getenv "AXIOM") "/algebra/exposed") + :verbose nil :if-does-not-exist nil) + '|done|) + (t '|failed|) )) + +@ + +\chapter{Support Functions from Lisp} +\pagehead{current-directory}{current-directory} +<>= +(defvar $current-directory "") + +@ +\pagehead{get-current-directory}{get-current-directory} +This function returns a string representing the current directory. +This is maintained in the \$current-directory variable. It is called +from the \fnref{restart} function. +<>= +#+:cmu +(defun get-current-directory () + (namestring (extensions::default-directory))) + +#+(or :akcl :gcl) +(defun get-current-directory () + (namestring (truename ""))) + +@ + \chapter{The Interpreter} <>= (in-package "BOOT") <> - <> <> @@ -5500,6 +5623,7 @@ DEBUGSYS=${OBJ}/${SYS}/bin/debugsys <> <> +<> <> <> @@ -5538,6 +5662,7 @@ DEBUGSYS=${OBJ}/${SYS}/bin/debugsys <> <> +<> <> <> @@ -5602,7 +5727,6 @@ DEBUGSYS=${OBJ}/${SYS}/bin/debugsys \section{Star Global Variables} \begin{tabular}{lll} NAME & SET & USE \\ -*default-pathname-defaults* & reroot & restart \\ *eof* & ncTopLevel & \\ *features* & & restart \\ *package* & & restart \\ @@ -5610,20 +5734,6 @@ NAME & SET & USE \\ *standard-output* & & ncIntLoop \\ *top-level-hook* & set-restart-hook & \\ \end{tabular} -\subsection{*default-pathname-defaults*} -The [[*default-pathname-defaults*]] variable is set by -[[make-absolute-filename]] called on the empty string. This has -the effect of setting the value to the [[AXIOM]] variable as this -function just concatenates the [[AXIOM]] variable onto the given string. -We pass this string to the common lisp [[pathname]] function to set it -to a real pathname. - -The [[*default-pathname-defaults*]] defaults common lisp variable is -set in [[restart]] to the current directory in most cases. If we are -working in Lucid Common Lisp ([[:lucid]]) on an IBM/370 mainframe -([[:ibm/370]]) then it is set to the empty string. Using Lucid on a -mainframe seems to use the variable [[vmlisp::$current-directory]]. - \subsection{*eof*} The [[*eof*]] variable is set to [[NIL]] in [[ncTopLevel]]. \subsection{*features*} @@ -5659,7 +5769,7 @@ NAME & SET & USE \\ coerceFailure & & runspad \\ curinstream & ncIntLoop & \\ curoutstream & ncIntLoop & \\ -vmlisp::\$current-directory & restart & \\ +\$current-directory & restart & \\ & reroot & \\ \$currentLine & restart & removeUndoLines \\ \$dalymode & & intloopReadConsole \\ @@ -5763,19 +5873,10 @@ The [[curoutstream]] variable is set to the value of the [[*standard-output*]] common lisp variable in [[ncIntLoop]]. While not using the ``dollar'' convention this variable is still ``global''. -\subsection{vmlisp::\$current-directory} -When running in Lucid Common Lisp ([[:lucid]]) on an IBM/370 mainframe -([[:ibm/370]]) this variable is used in place of the -[[*default-pathname-defaults*]] common lisp variable. -Otherwise this variable is -set to the empty string in [[restart]]. - -The [[reroot]] function sets this variable to the value of -[[$spadroot]] which itself has the value of the argument to the -[[reroot]] function. Since the argument to the [[reroot]] function is -an string which represents an absolute pathname pointing to AXIOM the -net result is that the [[$current-directory]] is set to point to the -shell [[AXIOM]] variable. +\subsection{\$current-directory} +This is set to the value returned by the \verb|get-current-directory| +function in \fnref{restart}. It is set to the argument of the +\verb|reroot| function. So during execute both [[$current-directory]] and [[$spadroot]] reflect the value of the [[AXIOM]] shell variable. @@ -6032,7 +6133,7 @@ The [[$previousBindings]] is a copy of the compute the [[delta(i)]]s stored in [[$frameRecord]]. This is part of the undo mechanism. -\subsection{\$printLoadMsgs} +\pagehead{printLoadMsgs}{printLoadMsgs} The [[$printLoadMsgs]] variable is set to [[T]] in [[restart]]. \subsection{\$PrintCompilerMessageIfTrue} diff --git a/books/ps/v5restart.ps b/books/ps/v5restart.ps new file mode 100644 index 0000000..eefd825 --- /dev/null +++ b/books/ps/v5restart.ps @@ -0,0 +1,468 @@ +%!PS-Adobe-2.0 +%%Creator: Graphviz version 2.16.1 (Mon Jul 7 18:20:33 UTC 2008) +%%For: (root) root +%%Title: g +%%Pages: (atend) +%%BoundingBox: (atend) +%%EndComments +save +%%BeginProlog +/DotDict 200 dict def +DotDict begin + +/setupLatin1 { +mark +/EncodingVector 256 array def + EncodingVector 0 + +ISOLatin1Encoding 0 255 getinterval putinterval +EncodingVector 45 /hyphen put + +% Set up ISO Latin 1 character encoding +/starnetISO { + dup dup findfont dup length dict begin + { 1 index /FID ne { def }{ pop pop } ifelse + } forall + /Encoding EncodingVector def + currentdict end definefont +} def +/Times-Roman starnetISO def +/Times-Italic starnetISO def +/Times-Bold starnetISO def +/Times-BoldItalic starnetISO def +/Helvetica starnetISO def +/Helvetica-Oblique starnetISO def +/Helvetica-Bold starnetISO def +/Helvetica-BoldOblique starnetISO def +/Courier starnetISO def +/Courier-Oblique starnetISO def +/Courier-Bold starnetISO def +/Courier-BoldOblique starnetISO def +cleartomark +} bind def + +%%BeginResource: procset graphviz 0 0 +/coord-font-family /Times-Roman def +/default-font-family /Times-Roman def +/coordfont coord-font-family findfont 8 scalefont def + +/InvScaleFactor 1.0 def +/set_scale { + dup 1 exch div /InvScaleFactor exch def + scale +} bind def + +% styles +/solid { [] 0 setdash } bind def +/dashed { [9 InvScaleFactor mul dup ] 0 setdash } bind def +/dotted { [1 InvScaleFactor mul 6 InvScaleFactor mul] 0 setdash } bind def +/invis {/fill {newpath} def /stroke {newpath} def /show {pop newpath} def} bind def +/bold { 2 setlinewidth } bind def +/filled { } bind def +/unfilled { } bind def +/rounded { } bind def +/diagonals { } bind def + +% hooks for setting color +/nodecolor { sethsbcolor } bind def +/edgecolor { sethsbcolor } bind def +/graphcolor { sethsbcolor } bind def +/nopcolor {pop pop pop} bind def + +/beginpage { % i j npages + /npages exch def + /j exch def + /i exch def + /str 10 string def + npages 1 gt { + gsave + coordfont setfont + 0 0 moveto + (\() show i str cvs show (,) show j str cvs show (\)) show + grestore + } if +} bind def + +/set_font { + findfont exch + scalefont setfont +} def + +% draw text fitted to its expected width +/alignedtext { % width text + /text exch def + /width exch def + gsave + width 0 gt { + [] 0 setdash + text stringwidth pop width exch sub text length div 0 text ashow + } if + grestore +} def + +/boxprim { % xcorner ycorner xsize ysize + 4 2 roll + moveto + 2 copy + exch 0 rlineto + 0 exch rlineto + pop neg 0 rlineto + closepath +} bind def + +/ellipse_path { + /ry exch def + /rx exch def + /y exch def + /x exch def + matrix currentmatrix + newpath + x y translate + rx ry scale + 0 0 1 0 360 arc + setmatrix +} bind def + +/endpage { showpage } bind def +/showpage { } def + +/layercolorseq + [ % layer color sequence - darkest to lightest + [0 0 0] + [.2 .8 .8] + [.4 .8 .8] + [.6 .8 .8] + [.8 .8 .8] + ] +def + +/layerlen layercolorseq length def + +/setlayer {/maxlayer exch def /curlayer exch def + layercolorseq curlayer 1 sub layerlen mod get + aload pop sethsbcolor + /nodecolor {nopcolor} def + /edgecolor {nopcolor} def + /graphcolor {nopcolor} def +} bind def + +/onlayer { curlayer ne {invis} if } def + +/onlayers { + /myupper exch def + /mylower exch def + curlayer mylower lt + curlayer myupper gt + or + {invis} if +} def + +/curlayer 0 def + +%%EndResource +%%EndProlog +%%BeginSetup +14 default-font-family set_font +1 setmiterlimit +% /arrowlength 10 def +% /arrowwidth 5 def + +% make sure pdfmark is harmless for PS-interpreters other than Distiller +/pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse +% make '<<' and '>>' safe on PS Level 1 devices +/languagelevel where {pop languagelevel}{1} ifelse +2 lt { + userdict (<<) cvn ([) cvn load put + userdict (>>) cvn ([) cvn load put +} if + +%%EndSetup +setupLatin1 +%%Page: 1 1 +%%PageBoundingBox: 36 36 238 404 +%%PageOrientation: Portrait +0 0 1 beginpage +gsave +36 36 202 368 boxprim clip newpath +1 1 set_scale 0 rotate 40 40 translate +0.167 0.600 1.000 graphcolor +newpath -4 -4 moveto +-4 716 lineto +536 716 lineto +536 -4 lineto +closepath fill +1 setlinewidth +0.167 0.600 1.000 graphcolor +newpath -4 -4 moveto +-4 716 lineto +536 716 lineto +536 -4 lineto +closepath stroke +% lisp +gsave +[ /Rect [ 68 304 126 352 ] + /Border [ 0 0 0 ] + /Action << /Subtype /URI /URI (bookvol5.pdf#nameddest=lisp) >> + /Subtype /Link +/ANN pdfmark +0.167 0.600 1.000 nodecolor +newpath 126 352 moveto +68 352 lineto +68 304 lineto +126 304 lineto +closepath fill +1 setlinewidth +filled +0.167 0.600 1.000 nodecolor +newpath 126 352 moveto +68 352 lineto +68 304 lineto +126 304 lineto +closepath stroke +0.537 0.247 0.902 nodecolor +newpath 76 328 moveto +76 348 lineto +118 348 lineto +118 328 lineto +closepath fill +1 setlinewidth +solid +0.537 0.247 0.902 nodecolor +newpath 76 328 moveto +76 348 lineto +118 348 lineto +118 328 lineto +closepath stroke +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 76 328 moveto +76 348 lineto +118 348 lineto +118 328 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +79 334.733 moveto 20 (lisp) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 76 308 moveto +76 328 lineto +118 328 lineto +118 308 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +79 314.733 moveto 36 (restart) alignedtext +grestore +% restart +gsave +[ /Rect [ 0 0 194 268 ] + /Border [ 0 0 0 ] + /Action << /Subtype /URI /URI (bookvol5.pdf#nameddest=restart) >> + /Subtype /Link +/ANN pdfmark +0.167 0.600 1.000 nodecolor +newpath 194 268 moveto +5.68434e-14 268 lineto +1.42109e-14 8.52651e-14 lineto +194 0 lineto +closepath fill +1 setlinewidth +filled +0.167 0.600 1.000 nodecolor +newpath 194 268 moveto +5.68434e-14 268 lineto +1.42109e-14 8.52651e-14 lineto +194 0 lineto +closepath stroke +0.537 0.247 0.902 nodecolor +newpath 8 244 moveto +8 264 lineto +186 264 lineto +186 244 lineto +closepath fill +1 setlinewidth +solid +0.537 0.247 0.902 nodecolor +newpath 8 244 moveto +8 264 lineto +186 264 lineto +186 244 lineto +closepath stroke +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 244 moveto +8 264 lineto +186 264 lineto +186 244 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +11 250.733 moveto 36 (restart) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 224 moveto +8 244 lineto +186 244 lineto +186 224 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +76.5 230.733 moveto 41 (initroot) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 204 moveto +8 224 lineto +186 224 lineto +186 204 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +65.5 210.733 moveto 63 (openserver) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 184 moveto +8 204 lineto +186 204 lineto +186 184 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +17.5 190.733 moveto 159 (makeInitialModemapFrame) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 164 moveto +8 184 lineto +186 184 lineto +186 164 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +37 170.733 moveto 120 (get-current-directory) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 144 moveto +8 164 lineto +186 164 lineto +186 144 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +25.5 150.733 moveto 143 (loadExposureGroupData) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 124 moveto +8 144 lineto +186 144 lineto +186 124 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +36 130.733 moveto 122 (statisticsInitialization) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 104 moveto +8 124 lineto +186 124 lineto +186 104 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +76.5 110.733 moveto 41 (initHist) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 84 moveto +8 104 lineto +186 104 lineto +186 84 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +11.5 90.7333 moveto 171 (initializeInterpreterFrameRing) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 64 moveto +8 84 lineto +186 84 lineto +186 64 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +45.5 70.7333 moveto 103 (spadStartUpMsgs) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 44 moveto +8 64 lineto +186 64 lineto +186 44 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +75 50.7333 moveto 44 (restart0) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 24 moveto +8 44 lineto +186 44 lineto +186 24 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +29.5 30.7333 moveto 135 (readSpadProfileIfThere) alignedtext +1 setlinewidth +solid +0.000 0.000 0.000 nodecolor +newpath 8 4 moveto +8 24 lineto +186 24 lineto +186 4 lineto +closepath stroke +0.000 0.000 0.000 nodecolor +14.00 /Times-Roman set_font +83.5 10.7333 moveto 27 (spad) alignedtext +grestore +% lisp->restart +gsave +5 setlinewidth +0.000 0.000 0.000 edgecolor +newpath 97 308 moveto +97 299 97 286 97 274 curveto +stroke +0.000 0.000 0.000 edgecolor +newpath 100.5 274 moveto +97 264 lineto +93.5001 274 lineto +closepath fill +1 setlinewidth +solid +0.000 0.000 0.000 edgecolor +newpath 100.5 274 moveto +97 264 lineto +93.5001 274 lineto +closepath stroke +grestore +endpage +showpage +grestore +%%PageTrailer +%%EndPage: 1 +%%Trailer +%%Pages: 1 +%%BoundingBox: 36 36 238 404 +end +restore +%%EOF diff --git a/changelog b/changelog index 5069ea7..1eb750a 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,7 @@ +20090212 tpd src/axiom-website/patches.html 20090212.02.tpd.patch +20090212 tpd src/Makefile.pamphlet copy bookvol5 +20090212 tpd books/ps/v5restart.ps added +20090212 tpd books/bookvol5.pamphlet rewrite/document restart function 20090212 tpd src/axiom-website/patches.html 20090212.01.tpd.patch 20090212 tpd src/interp/interp-proclaims.lisp update proclaims for changes 20090212 tpd src/interp/sockio.lisp remove unused code diff --git a/src/Makefile.pamphlet b/src/Makefile.pamphlet index 34820b0..a48ac4b 100644 --- a/src/Makefile.pamphlet +++ b/src/Makefile.pamphlet @@ -259,6 +259,7 @@ interpdir: ${SRC}/interp/Makefile @mkdir -p ${MNT}/${SYS}/algebra @mkdir -p ${MNT}/${SYS}/doc/msgs @mkdir -p ${MNT}/${SYS}/doc/src/interp + @cp ${SPD}/books/bookvol5.pamphlet interp @(cd interp ; ${ENV} ${MAKE} ) ${SRC}/interp/Makefile: ${SRC}/interp/Makefile.pamphlet diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html index 2fbdca2..140c90c 100644 --- a/src/axiom-website/patches.html +++ b/src/axiom-website/patches.html @@ -943,5 +943,7 @@ bookvol10.4 add exports
bookvol10.4 add exports
20090212.01.tpd.patch remove unused code
+20090212.02.tpd.patch +rewrite restart