aboutsummaryrefslogtreecommitdiff
path: root/src/interp/i-analy.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-12-20 18:13:38 +0000
committerdos-reis <gdr@axiomatics.org>2008-12-20 18:13:38 +0000
commit93853a12aba78b695405d9275f9ab56b01ec4269 (patch)
treea4bf53b6d33d0e96ad9eede28d94b14b6fda2f59 /src/interp/i-analy.boot
parent70962cd1ef47767d4cb623a129b5c955a5aec41e (diff)
downloadopen-axiom-93853a12aba78b695405d9275f9ab56b01ec4269.tar.gz
* interp/i-analy.boot (elaborateForm): New.
* interp/i-spec2.boot (uphas): Use it. Evaluate first operand.
Diffstat (limited to 'src/interp/i-analy.boot')
-rw-r--r--src/interp/i-analy.boot6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/interp/i-analy.boot b/src/interp/i-analy.boot
index 84518d51..1541fbc7 100644
--- a/src/interp/i-analy.boot
+++ b/src/interp/i-analy.boot
@@ -207,6 +207,12 @@ pushDownOp?(op,n) ==
-- Also see I-SPEC BOOT for special handlers and I-MAP BOOT for
-- user function processing.
+++ Take a parse form and return the VAT for its elaboration.
+elaborateForm pf ==
+ t := mkAtree1 pf
+ bottomUp t
+ t
+
bottomUp t ==
-- bottomUp takes an attributed tree, and returns the modeSet for it.
-- As a side-effect it also evaluates the tree.