aboutsummaryrefslogtreecommitdiff
path: root/src/interp/g-opt.boot.pamphlet
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2007-10-12 04:33:34 +0000
committerdos-reis <gdr@axiomatics.org>2007-10-12 04:33:34 +0000
commit154daf2e85eaa209486de6d41e8a1b067590bb8e (patch)
tree66b48e2b838cd2033727638c181a12d21b7e4ead /src/interp/g-opt.boot.pamphlet
parentbdea50f2baa8f866a77d355ef23a1ba844f8c2b7 (diff)
downloadopen-axiom-154daf2e85eaa209486de6d41e8a1b067590bb8e.tar.gz
* Makefile.pamphlet (${DEPSYS}): Depend on g-util.$(FASLEXT).
Load explicitly. (<<profile.clisp>>): Remove. (<<g-cndata.clisp>>): Likewise. (<<g-opt.clisp>>): Likewise. (<<g-timer.clisp>>): Likewise. (<<hypertex.clisp>>): Likewise. (<<rulesets.clisp>>): Likewise. (<<ht-util.clisp>>): Likewise. (<<htsetvar.clisp>>): Likewise. (<<ht-root.clisp>>): Likewise. (<<htcheck.clisp>>): Likewise. (ht-root.$(FASLEXT)): New rule. (htcheck.$(FASLEXT)): Likewise. (ht-util.$(FASLEXT)): Likewise. (htsetvar.$(FASLEXT)): Likewise. (hypertex.$(FASLEXT)): Likewise. (profile.$(FASLEXT)): Likewise. (rulesets.$(FASLEXT)): Likewise. (g-opt.$(FASLEXT)): Likewise. (g-timer.$(FASLEXT)): Likewise. (g-util.$(FASLEXT)): Likewise. (g-cndata.$(FASLEXT)): Likewise. * daase.lisp.pamphlet (*attributes*): Move definition to sys-constants.boot. * g-cndata.boot.pamphlet: Push into package "BOOT". Fix syntax. * g-opt.boot.pamphlet: Likewise. (EqualBarGensym): Fix thinko. * g-timer.boot.pamphlet: Push into package "BOOT". * g-util.boot.pamphlet: Likewise. * ht-root.boot.pamphlet: Likewise. Fix syntax. * ht-util.boot.pamphlet: Push into package "BOOT". * htcheck.boot.pamphlet: Likewise. * htsetvar.boot.pamphlet: Likewise. * hypertex.boot.pamphlet: Likewise. Fix syntax. * profile.boot.pamphlet: Likewise. * rulesets.boot.pamphlet: Likewise. * setq.lisp.pamphlet (/VERSION): Move definition to sys-globals.boot. * spad.lisp.pamphlet (/WSNAME): Likewise. (|rplac|): Move to sys-macros.boot.
Diffstat (limited to 'src/interp/g-opt.boot.pamphlet')
-rw-r--r--src/interp/g-opt.boot.pamphlet56
1 files changed, 28 insertions, 28 deletions
diff --git a/src/interp/g-opt.boot.pamphlet b/src/interp/g-opt.boot.pamphlet
index 33fad9dd..cb16c275 100644
--- a/src/interp/g-opt.boot.pamphlet
+++ b/src/interp/g-opt.boot.pamphlet
@@ -46,6 +46,10 @@
<<*>>=
<<license>>
+import '"def"
+
+)package "BOOT"
+
--% OPTIMIZER
optimizeFunctionDef(def) ==
@@ -119,12 +123,12 @@ optCatch (x is ["CATCH",g,a]) ==
changeThrowToExit(rest s,g)
rplac(rest a,[:s,["EXIT",u]])
["CATCH",y,a]:= optimize x
- if hasNoThrows(a,g)
- then (rplac(first x,first a); rplac(rest x,rest a)) where
- hasNoThrows(a,g) ==
- a is ["THROW", =g,:.] => false
- atom a => true
- hasNoThrows(first a,g) and hasNoThrows(rest a,g)
+ if hasNoThrows(a,g) where
+ hasNoThrows(a,g) ==
+ a is ["THROW", =g,:.] => false
+ atom a => true
+ hasNoThrows(first a,g) and hasNoThrows(rest a,g)
+ then (rplac(first x,first a); rplac(rest x,rest a))
else
changeThrowToGo(a,g) where
changeThrowToGo(s,g) ==
@@ -264,7 +268,7 @@ AssocBarGensym(key,l) ==
EqualBarGensym(key,CAR x) => return x
EqualBarGensym(x,y) ==
- $GensymAssoc: nil
+ $GensymAssoc: fluid
fn(x,y) where
fn(x,y) ==
x=y => true
@@ -391,27 +395,23 @@ optEQ u ==
u
u
-EVALANDFILEACTQ
- (
- for x in '( (call optCall) _
- (SEQ optSEQ)_
- (EQ optEQ)
- (MINUS optMINUS)_
- (QSMINUS optQSMINUS)_
- (_- opt_-)_
- (LESSP optLESSP)_
- (SPADCALL optSPADCALL)_
- (_| optSuchthat)_
- (CATCH optCatch)_
- (COND optCond)_
- (mkRecord optMkRecord)_
- (RECORDELT optRECORDELT)_
- (SETRECORDELT optSETRECORDELT)_
- (RECORDCOPY optRECORDCOPY)) _
- repeat MAKEPROP(CAR x,'OPTIMIZE,CREATE_-SBC CADR x)
- --much quicker to call functions if they have an SBC
- )
-
+for x in '( (call optCall) _
+ (SEQ optSEQ)_
+ (EQ optEQ)
+ (MINUS optMINUS)_
+ (QSMINUS optQSMINUS)_
+ (_- opt_-)_
+ (LESSP optLESSP)_
+ (SPADCALL optSPADCALL)_
+ (_| optSuchthat)_
+ (CATCH optCatch)_
+ (COND optCond)_
+ (mkRecord optMkRecord)_
+ (RECORDELT optRECORDELT)_
+ (SETRECORDELT optSETRECORDELT)_
+ (RECORDCOPY optRECORDCOPY)) _
+ repeat MAKEPROP(CAR x,'OPTIMIZE,CREATE_-SBC CADR x)
+ --much quicker to call functions if they have an SBC
@
\eject