aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog9
-rw-r--r--src/interp/bootlex.lisp31
-rw-r--r--src/interp/preparse.lisp1
-rw-r--r--src/interp/spad-parser.boot12
4 files changed, 11 insertions, 42 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index f8580b1c..b997cbdf 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,14 @@
2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu>
+ * interp/spad-parser.boot (parseSexpr1): Simplify.
+ (parseDara): Likewise. Do not set LABLASOC.
+ * interp/bootlex.lisp (PRINT-DEFUN): Remove.
+ (TRANSLABEL): Likewise.
+ (TRANSLABEL1): Likewise.
+ * interp/preparse.lisp (LABLASOC): Likewise.
+
+2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
* interp/vmlisp.lisp (SETANDFILE): Remove.
(LAM,EVALANDFILEACTQ): Likewise.
* interp/sys-utility.boot (PRINT-AND-EVAL-DEFUN): Likewise.
diff --git a/src/interp/bootlex.lisp b/src/interp/bootlex.lisp
index acb8d0e8..b7a22269 100644
--- a/src/interp/bootlex.lisp
+++ b/src/interp/bootlex.lisp
@@ -49,18 +49,6 @@
(IMPORT-MODULE "nlib")
(in-package "BOOT")
-; *** 1. BOOT file handling
-
-(defun print-defun (name body)
- (let* ((sp (assoc 'compiler-output-stream optionlist))
- (st (if sp (cdr sp) |$OutputStream|)))
- (if (and (|ioTerminal?| st) (symbolp name) (fboundp name)
- (not (compiled-function-p (symbol-function name))))
- (compile name))
- (when (or |$PrettyPrint| (not (|ioTerminal?| st)))
- (print-full body st) (force-output st))))
-
-
; *** 3. BOOT Token Handling ***
;; -*- Parse an integer number -*-
@@ -112,22 +100,3 @@
(setq val (get-integer-in-radix buf val))
(|advanceChar!|))
(|tokenInstall| val 'number token (size buf))))
-
-; **** 4. BOOT token parsing actions
-
-
-(defun TRANSLABEL (X AL) (TRANSLABEL1 X AL) X)
-
-(defun TRANSLABEL1 (X AL)
- "Transforms X according to AL = ((<label> . Sexpr) ..)."
- (COND ((simple-vector-p X)
- (do ((i 0 (1+ i))
- (k (|maxIndex| x)))
- ((> i k))
- (if (LET ((Y (LASSOC (ELT X I) AL))) (SETF (ELT X I) Y))
- (TRANSLABEL1 (ELT X I) AL))))
- ((ATOM X) NIL)
- ((LET ((Y (LASSOC (FIRST X) AL)))
- (if Y (setf (FIRST X) Y) (TRANSLABEL1 (CDR X) AL))))
- ((TRANSLABEL1 (FIRST X) AL) (TRANSLABEL1 (CDR X) AL))))
-
diff --git a/src/interp/preparse.lisp b/src/interp/preparse.lisp
index 3a553235..0bea0768 100644
--- a/src/interp/preparse.lisp
+++ b/src/interp/preparse.lisp
@@ -72,7 +72,6 @@
(DEFPARAMETER TOK NIL)
(DEFPARAMETER DEFINITION_NAME NIL)
-(DEFPARAMETER LABLASOC NIL)
(defun Initialize-Preparse (strm)
(setq $INDEX 0 |$LineList| nil |$EchoLineStack| nil)
diff --git a/src/interp/spad-parser.boot b/src/interp/spad-parser.boot
index 6bcfca02..3e821cda 100644
--- a/src/interp/spad-parser.boot
+++ b/src/interp/spad-parser.boot
@@ -381,13 +381,7 @@ parseSpecialKeyWord() ==
nil
parseSexpr1() ==
- parseInteger() or parseString() => true
- parseAnyId() =>
- parseNBGlyph "=" =>
- compulsorySyntax parseSexpr1()
- SETQ(LABLASOC,[[popStack2(),:nthStack 1],:LABLASOC])
- true
- true
+ parseInteger() or parseString() or parseAnyId() => true
matchAdvanceSpecial char "'" =>
compulsorySyntax parseSexpr1()
pushReduction('parseSexpr1,["QUOTE",popStack1()])
@@ -414,9 +408,7 @@ parseSexpr() ==
parseSexpr1()
parseData() ==
- SETQ(LABLASOC,nil)
- parseSexpr() and
- pushReduction('parseData,["QUOTE",TRANSLABEL(popStack1(),LABLASOC)])
+ parseSexpr() and pushReduction('parseData,["QUOTE",popStack1()])
parseCommand() ==
matchAdvanceString '")" => --FIXME: remove matchAdvanceString