aboutsummaryrefslogtreecommitdiff
path: root/src/interp/define.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2012-02-26 20:57:32 +0000
committerdos-reis <gdr@axiomatics.org>2012-02-26 20:57:32 +0000
commit7f099548f4fce103f5eb285e20fcb5f0aebdfee9 (patch)
treed0e663f68d0076fa29cd45dd171192309cd1dc1d /src/interp/define.boot
parentaec9b22130652d0f5e6eed72f04ae128633108df (diff)
downloadopen-axiom-7f099548f4fce103f5eb285e20fcb5f0aebdfee9.tar.gz
* interp/g-util.boot (usedSymbol?): Remove.
(bindingForm?): New. (usesVariable?): Likewise. * interp/compiler.boot (declareUnusedParameters): Use it. * interp/g-opt.boot (inlineLocals): Likewise. (optClosure): Likewise. (optBind): Likewise. * interp/define.boot (compContained): Remove.
Diffstat (limited to 'src/interp/define.boot')
-rw-r--r--src/interp/define.boot10
1 files changed, 1 insertions, 9 deletions
diff --git a/src/interp/define.boot b/src/interp/define.boot
index 495a9cc9..025eb880 100644
--- a/src/interp/define.boot
+++ b/src/interp/define.boot
@@ -2207,7 +2207,7 @@ compSubDomain1(domainForm,predicate,m,e) ==
" cannot be interpreted with #1: ",domainForm],nil)
pred := simplifyVMForm u.expr
-- For now, reject predicates that directly reference domains
- CONTAINED("$",pred) =>
+ usesVariable?(pred,'$) =>
stackAndThrow('"predicate %1pb is not simple enough",[predicate])
emitSubdomainInfo($form,domainForm,pred)
[domainForm,m,e]
@@ -2386,14 +2386,6 @@ doItIf(item is [.,p,x,y],$predl,$e) ==
--% CATEGORY AND DOMAIN FUNCTIONS
-compContained: (%Form, %Mode, %Env) -> %Maybe %Triple
-compContained(["CONTAINED",a,b],m,e) ==
- [a,ma,e]:= comp(a,$EmptyMode,e) or return nil
- [b,mb,e]:= comp(b,$EmptyMode,e) or return nil
- isCategoryForm(ma,e) and isCategoryForm(mb,e) =>
- (T:= [["CONTAINED",a,b],$Boolean,e]; convert(T,m))
- nil
-
compJoin(["Join",:argl],m,e) ==
catList:= [(compForMode(x,$Category,e) or return 'failed).expr for x in argl]
catList='failed => stackSemanticError(["cannot form Join of: ",argl],nil)