aboutsummaryrefslogtreecommitdiff
path: root/src/boot/translator.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2009-08-29 17:28:32 +0000
committerdos-reis <gdr@axiomatics.org>2009-08-29 17:28:32 +0000
commit5f24b5d3416d723eed6052b491311c7549a2526e (patch)
treec32e01fd8e514b898845770589c9fa0df12db512 /src/boot/translator.boot
parent5521671cdf9c64efe8f73f4026ab0c7bf4dbf018 (diff)
downloadopen-axiom-5f24b5d3416d723eed6052b491311c7549a2526e.tar.gz
* boot/ast.boot (%Definition): Lose one argument.
(bfDefinition): Remove. (bfSimpleDefinition): Likewise. (bfCompDef): Likewise. (bfDefSequence): Likewise. (defSheepAndGoats): Tidy. * boot/parser.boot (bpSimpleDefinitionTail): Likewise. (bpCompoundDefinitionTail): Likewise. (bpDefinitionPileItems): Likewise. (bpSemiColonDefinition): Likewise. * boot/translator.boot (translateToplevel): Likewise.
Diffstat (limited to 'src/boot/translator.boot')
-rw-r--r--src/boot/translator.boot3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/boot/translator.boot b/src/boot/translator.boot
index d172b0ed..ff7f2840 100644
--- a/src/boot/translator.boot
+++ b/src/boot/translator.boot
@@ -406,10 +406,10 @@ translateToplevelExpression expr ==
translateToplevel(b,export?) ==
atom b => [b] -- generally happens in interactive mode.
- b is ["DEF",:.] => rest bfCompDef b
b is ["TUPLE",:xs] => coreError '"invalid AST"
case b of
%Signature(op,t) => [genDeclaration(op,t)]
+ %Definition(op,args,body) => rest bfDef(op,args,body)
%Module(m,ds) =>
$currentModuleName := m
@@ -432,6 +432,7 @@ translateToplevel(b,export?) ==
if lhs is ["%Signature",n,t] then
sig := genDeclaration(n,t)
lhs := n
+ $constantIdentifiers := [lhs,:$constantIdentifiers]
[["DEFCONSTANT",lhs,rhs]]
%Assignment(lhs,rhs) =>