|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object
|
+--gnu.expr.ExpWalker
|
+--gnu.expr.ExpFullWalker
|
+--gnu.expr.PushApply
Re-arranges ApplyExp where the function is a LetExp or BeginExp. Optimizes ((let (...) body) . args) to (let (...) (body . args)). Optimizes ((begin ... last) . args) to (begin ... (last . args)). This helps optimize Scheme "named let" (and some other forms) by making it more likely the application will be to a known procedure. This optimization has to be done after Declarations are bound.
| Constructor Summary | |
PushApply()
|
|
| Method Summary | |
static void |
pushApply(Expression exp)
|
java.lang.Object |
walkApplyExp(ApplyExp exp)
|
| Methods inherited from class gnu.expr.ExpFullWalker |
getCurrentLambda,
walkBeginExp,
walkBlockExp,
walkDefaultArgs,
walkExitExp,
walkExpression,
walkExps,
walkIfExp,
walkLambdaExp,
walkLetExp,
walkObjectExp,
walkSetExp,
walkSynchronizedExp,
walkTryExp |
| Methods inherited from class gnu.expr.ExpWalker |
walkFluidLetExp,
walkQuoteExp,
walkReferenceExp,
walkScopeExp,
walkSetApplyExp,
walkThisExp |
| Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
| Constructor Detail |
public PushApply()
| Method Detail |
public static void pushApply(Expression exp)
public java.lang.Object walkApplyExp(ApplyExp exp)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||