aboutsummaryrefslogtreecommitdiff
path: root/src/interp/ptrees.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-05-22 18:23:00 +0000
committerdos-reis <gdr@axiomatics.org>2010-05-22 18:23:00 +0000
commit59138e151fbb3e33965af01d14bfe52a3b6ada16 (patch)
treea5dfb87f7e3a782bbd9da9980231173377197c07 /src/interp/ptrees.boot
parent37846f4b385342087d072abb1d743222e26c4545 (diff)
downloadopen-axiom-59138e151fbb3e33965af01d14bfe52a3b6ada16.tar.gz
* interp/ptrees.boot (pfWith): Now a function of two arguments.
(pfWithWithon): Remove. (pfDefinableName?): New. (pfCheckItOut): Use it. * interp/cparse.boot (npWith): Simplify. * interp/pf2sex.boot (pfWith2Sex): Adjust. (pfAdd2Sex): Tidy.
Diffstat (limited to 'src/interp/ptrees.boot')
-rw-r--r--src/interp/ptrees.boot14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/interp/ptrees.boot b/src/interp/ptrees.boot
index 1d3848ee..06ff0b65 100644
--- a/src/interp/ptrees.boot
+++ b/src/interp/ptrees.boot
@@ -96,6 +96,9 @@ pfDocument strings == pfLeaf('Document, strings)
pfDocument? form == pfAbSynOp?(form, 'Document)
pfDocumentText form == tokPart form
+pfDefinableName? form ==
+ pfAbSynOp form in '(id integer)
+
pfLiteral? form ==
pfAbSynOp form in '(integer symbol expression one zero char string float)
@@ -304,12 +307,11 @@ pfDWhereExpr pf == third pf -- was ==>
-- With := (Base: [Typed], Within: [WithPart])
-pfWith(pfbase, pfwithin,pfwithon) ==
- pfTree('With, [pfbase, pfwithin,pfwithon])
+pfWith(pfbase, pfwithin) ==
+ pfTree('With, [pfbase,pfwithin])
pfWith?(pf) == pfAbSynOp? (pf, 'With)
-pfWithBase pf == second pf -- was ==>
-pfWithWithin pf == third pf -- was ==>
-pfWithWithon pf == fourth pf -- was ==>
+pfWithBase pf == second pf
+pfWithWithin pf == third pf
pf0WithBase pf == pfParts pfWithBase pf
pf0WithWithin pf == pfParts pfWithWithin pf
@@ -700,7 +702,7 @@ pfPushBody(t,args,body)==
pfCheckItOut x ==
rt:=if pfTagged? x then pfTaggedExpr x else pfNothing()
form:= if pfTagged? x then pfTaggedTag x else x
- pfId? form => [pfListOf [pfTyped(form,rt)],nil,rt]
+ pfDefinableName? form => [pfListOf [pfTyped(form,rt)],nil,rt]
pfCollect1? form =>
[pfListOf [pfCollectVariable1 form],nil,rt]
pfTuple? form =>