aboutsummaryrefslogtreecommitdiff
path: root/src/interp/lisp-backend.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2013-05-29 15:34:35 +0000
committerdos-reis <gdr@axiomatics.org>2013-05-29 15:34:35 +0000
commit9302bb2272f4e90b057548afe7c406f52b773e62 (patch)
tree03cc11710bd9cb265cf566d24e64b9aa80b1dcbe /src/interp/lisp-backend.boot
parent2b324bcfd116749f4966dd1948f0d9bf7b4a0033 (diff)
downloadopen-axiom-9302bb2272f4e90b057548afe7c406f52b773e62.tar.gz
Simplify backend functions
Diffstat (limited to 'src/interp/lisp-backend.boot')
-rw-r--r--src/interp/lisp-backend.boot13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/interp/lisp-backend.boot b/src/interp/lisp-backend.boot
index db970d90..941aca5b 100644
--- a/src/interp/lisp-backend.boot
+++ b/src/interp/lisp-backend.boot
@@ -43,7 +43,7 @@ namespace BOOT
module lisp_-backend where
expandToVMForm: %Thing -> %Thing
eval: %Thing -> %Thing
- printBackendDecl: (%Symbol,%Code) -> %Void
+ printBackendDecl: %Code -> %Void
transformToBackendCode: %Form -> %Code
@@ -767,10 +767,9 @@ expandToVMForm x ==
eval x ==
EVAL expandToVMForm x
-
-compileLispDefinition(name,def) ==
- $backend ~= nil => apply($backend,name,def,nil)
- nil
+++ Augment the current evaluation environment with a function definition.
+evaluateLispDefinition body ==
+ eval body
++ Return true if `parms' is the empty list
++ or is a proper list of identifiers.
@@ -814,7 +813,7 @@ COMPILE1 fun ==
body :=
type in '(%lambda LAMBDA) => ['DEFUN,name,newArgs,:body]
['DEFMACRO,name,newArgs,:body]
- compileLispDefinition(name,body)
+ apply($backend,[body])
body
COMP370 x ==
@@ -827,7 +826,7 @@ assembleCode x ==
else COMP370 x
first x
-printBackendDecl(label,decl) ==
+printBackendDecl decl ==
st :=
sp := symbolAssoc('COMPILER_-OUTPUT_-STREAM,$compilerOptions) => rest sp
$OutputStream