aboutsummaryrefslogtreecommitdiff
path: root/src/interp/compiler.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2013-05-28 02:58:55 +0000
committerdos-reis <gdr@axiomatics.org>2013-05-28 02:58:55 +0000
commit8266743dc86cbfb39cdad47b3d40f4d3bda9d34b (patch)
treec82bf3aa82dc20adeef66d15b2e5b6cb36e5ece0 /src/interp/compiler.boot
parent3842dfd430a61d1f7d7266e373600e85c3ad5328 (diff)
downloadopen-axiom-8266743dc86cbfb39cdad47b3d40f4d3bda9d34b.tar.gz
Have compDefine take a DB parameter
Diffstat (limited to 'src/interp/compiler.boot')
-rw-r--r--src/interp/compiler.boot5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot
index 43ac6566..1bb651c2 100644
--- a/src/interp/compiler.boot
+++ b/src/interp/compiler.boot
@@ -168,6 +168,9 @@ comp2(x,m,e) ==
comp3(x,m,$e) ==
--returns a Triple or %else nil to signalcan't do'
+ db :=
+ ctor := currentConstructor $e => constructorDB ctor
+ nil
$e:= addDomain(m,$e)
e:= $e --for debugging purposes
m is ["Mapping",:.] => compWithMappingMode(x,m,e)
@@ -183,6 +186,7 @@ comp3(x,m,$e) ==
and (T := applyMapping(x,m,e,ml)) => T
op is ":" => compColon(x,m,e)
op is "::" => compCoerce(x,m,e)
+ op is 'DEF => compDefine(db,x,m,e)
t:= compExpression(x,m,e)
t is [x',m',e'] and not listMember?(m',getDomainsInScope e') =>
[x',m',addDomain(m',e')]
@@ -2832,7 +2836,6 @@ for x in [["|", :"compSuchthat"],_
["COLLECT", :"compRepeatOrCollect"],_
["CONS", :"compCons"],_
["construct", :"compConstruct"],_
- ["DEF", :"compDefine"],_
["elt", :"compElt"],_
["Enumeration", :"compBuiltinDomain"],_
["EnumerationCategory", :"compEnumCat"],_