aboutsummaryrefslogtreecommitdiff
path: root/src/interp/nci.lisp.pamphlet
diff options
context:
space:
mode:
Diffstat (limited to 'src/interp/nci.lisp.pamphlet')
-rw-r--r--src/interp/nci.lisp.pamphlet107
1 files changed, 107 insertions, 0 deletions
diff --git a/src/interp/nci.lisp.pamphlet b/src/interp/nci.lisp.pamphlet
new file mode 100644
index 00000000..51917f58
--- /dev/null
+++ b/src/interp/nci.lisp.pamphlet
@@ -0,0 +1,107 @@
+\documentclass{article}
+\usepackage{axiom}
+\begin{document}
+\title{\$SPAD/src/interp nci.lisp}
+\author{Timothy Daly}
+\maketitle
+\begin{abstract}
+\end{abstract}
+\eject
+\tableofcontents
+\eject
+\section{License}
+<<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.
+
+@
+<<*>>=
+<<license>>
+
+(in-package "BOOT")
+
+;; Interpreter interface to new compiler
+
+(defun |ncParseAndInterpretString| (s)
+ (|processInteractive|
+ (|packageTran| (|parseFromString| s))
+ NIL ))
+
+(defun |ncParseFromString| (s)
+ (|zeroOneTran| (|packageTran|
+ (catch 'SPAD_READER (|parseFromString| s)))))
+
+(defun |ncINTERPFILE| (file echo)
+ (let ((|$EchoLines| echo) (|$ReadingFile| t))
+ (declare (special |$EchoLines|))
+ (declare (special |$ReadingFile|))
+ (|SpadInterpretFile| file)) )
+
+(defun |ncGetFunction| (op dom sig)
+ (|applyInPackage| #'|getNCfunction|
+ (list (|rePackageTran| op "boot")
+ (|rePackageTran| dom "boot")
+ (|rePackageTran| sig "boot"))
+ "boot"))
+
+(defun |ncSetCurrentLine| (c)
+ (|setCurrentLine| c))
+
+(defun |applyInPackage| (fun args package)
+ (let ((*package* (find-package (string package))))
+ (declare (special *package*))
+ (apply fun args)))
+
+(defun |clearMacroTable| ()
+ (setq |$pfMacros| NIL))
+
+(defun |getParserMacros| ()
+ |$pfMacros|)
+
+(defun |displayParserMacro| (m)
+ (let ((m (assq m |$pfMacros|)))
+ (cond ((null m) nil)
+ (t (|pfPrintSrcLines| (CADDR m))))))
+
+
+(defun |intloopInclude| (name n)
+ (with-open-file (st name)
+ (|intloopInclude0| st name n)))
+
+(defun |ncloopInclude| (name n)
+ (with-open-file (st name)
+ (|ncloopInclude0| st name n)))
+@
+\eject
+\begin{thebibliography}{99}
+\bibitem{1} nothing
+\end{thebibliography}
+\end{document}