aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-02-22 17:25:49 +0000
committerdos-reis <gdr@axiomatics.org>2008-02-22 17:25:49 +0000
commitbd371dff087150c946a48a34299aabc893580ffe (patch)
treed762309d6b04a83e24910027f6cb2463b7daa5cd
parent3045578ca18746550988fa351fe62fe7bc92a703 (diff)
downloadopen-axiom-bd371dff087150c946a48a34299aabc893580ffe.tar.gz
* interp/i-analy.boot (bottomUpFormTuple): Use "tuple" for
parse form that are not type instantiations. * interp/i-coerce.boot (coerceInt1): Likewise. * interp/i-intern.boot (mkAtree3): Likewise. (collectDefTypesAndPreds): Likewise. * interp/i-map.boot (args2Tuple): Likewise. (makePattern): Likewise. (canMakeTuple): Likewise. (makeRuleForm): Likewise. (numArgs): Likewise. (combineMapParts): Likewise. (mkMapPred): Likewise. (findLocalVars1): Likewise. * interp/i-output.boot (outputTran): Likewise. * interp/i-spec1.boot ($specialOps): Likewise. (evalUntargetedADEF): Likewise. (upDeclare): Likewise. (declare): Likewise. * interp/i-spec2.boot (upDollarTuple): Likewise. (upLET): Likewise. (isTupleForm): Remove. (uptuple): Rename from upTuple. (upLETWithFormOnLhs): Use "tuple" for parse forms that are not type instantiations. * interp/i-syscmd.boot (displayMacro): Likewise. * interp/pf2atree.boot (pf2Atree1): Likewise. * interp/pf2sex.boot (pf2Sex1): Likewise. (pfApplication2Sex): Likewise. (pfCollectArgTran): Likewise. * interp/ptrees.boot (pfTuple): Likewise. (pfTuple?): Likewise.
-rwxr-xr-xconfigure18
-rw-r--r--configure.ac2
-rw-r--r--configure.ac.pamphlet4
-rw-r--r--src/ChangeLog34
-rw-r--r--src/algebra/Makefile.in3
-rw-r--r--src/interp/i-analy.boot2
-rw-r--r--src/interp/i-coerce.boot2
-rw-r--r--src/interp/i-intern.boot16
-rw-r--r--src/interp/i-map.boot18
-rw-r--r--src/interp/i-output.boot6
-rw-r--r--src/interp/i-spec1.boot14
-rw-r--r--src/interp/i-spec2.boot28
-rw-r--r--src/interp/i-syscmd.boot2
-rw-r--r--src/interp/pf2atree.boot6
-rw-r--r--src/interp/pf2sex.boot21
-rw-r--r--src/interp/ptrees.boot4
16 files changed, 100 insertions, 80 deletions
diff --git a/configure b/configure
index 83b04f38..56345a78 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.60 for OpenAxiom 1.2.0-2008-02-20.
+# Generated by GNU Autoconf 2.60 for OpenAxiom 1.2.0-2008-02-22.
#
# Report bugs to <open-axiom-bugs@lists.sf.net>.
#
@@ -713,8 +713,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='OpenAxiom'
PACKAGE_TARNAME='openaxiom'
-PACKAGE_VERSION='1.2.0-2008-02-20'
-PACKAGE_STRING='OpenAxiom 1.2.0-2008-02-20'
+PACKAGE_VERSION='1.2.0-2008-02-22'
+PACKAGE_STRING='OpenAxiom 1.2.0-2008-02-22'
PACKAGE_BUGREPORT='open-axiom-bugs@lists.sf.net'
ac_unique_file="src/Makefile.pamphlet"
@@ -1387,7 +1387,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures OpenAxiom 1.2.0-2008-02-20 to adapt to many kinds of systems.
+\`configure' configures OpenAxiom 1.2.0-2008-02-22 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1457,7 +1457,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of OpenAxiom 1.2.0-2008-02-20:";;
+ short | recursive ) echo "Configuration of OpenAxiom 1.2.0-2008-02-22:";;
esac
cat <<\_ACEOF
@@ -1561,7 +1561,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-OpenAxiom configure 1.2.0-2008-02-20
+OpenAxiom configure 1.2.0-2008-02-22
generated by GNU Autoconf 2.60
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1575,7 +1575,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by OpenAxiom $as_me 1.2.0-2008-02-20, which was
+It was created by OpenAxiom $as_me 1.2.0-2008-02-22, which was
generated by GNU Autoconf 2.60. Invocation command line was
$ $0 $@
@@ -25230,7 +25230,7 @@ exec 6>&1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by OpenAxiom $as_me 1.2.0-2008-02-20, which was
+This file was extended by OpenAxiom $as_me 1.2.0-2008-02-22, which was
generated by GNU Autoconf 2.60. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -25279,7 +25279,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-OpenAxiom config.status 1.2.0-2008-02-20
+OpenAxiom config.status 1.2.0-2008-02-22
configured by $0, generated by GNU Autoconf 2.60,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff --git a/configure.ac b/configure.ac
index 99f7c6f0..2e59439c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
sinclude(config/open-axiom.m4)
sinclude(config/aclocal.m4)
-AC_INIT([OpenAxiom], [1.2.0-2008-02-20],
+AC_INIT([OpenAxiom], [1.2.0-2008-02-22],
[open-axiom-bugs@lists.sf.net])
AC_CONFIG_AUX_DIR(config)
diff --git a/configure.ac.pamphlet b/configure.ac.pamphlet
index 39d9ab3a..05ddf80e 100644
--- a/configure.ac.pamphlet
+++ b/configure.ac.pamphlet
@@ -1008,7 +1008,7 @@ At the moment, we honor the following options:
The \Tool{Autoconf} machinery needs to be initialized with several pieces of
information:
\begin{itemize}
-\item the \emph{name} of the system --- ``OpenAxiom 1.0.0''
+\item the \emph{name} of the system --- ``OpenAxiom 1.2.0''
\item its \emph{version}. I choose to use the date of last checkin.
It should probably include the revision number so as to
unambiguously identify which \Tool{OpenAxiom} flavour du jour is being
@@ -1022,7 +1022,7 @@ information:
<<Autoconf init>>=
sinclude(config/open-axiom.m4)
sinclude(config/aclocal.m4)
-AC_INIT([OpenAxiom], [1.2.0-2008-02-20],
+AC_INIT([OpenAxiom], [1.2.0-2008-02-22],
[open-axiom-bugs@lists.sf.net])
@
diff --git a/src/ChangeLog b/src/ChangeLog
index 82abe67a..c2ace4fe 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,37 @@
+2008-02-22 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * interp/i-analy.boot (bottomUpFormTuple): Use "tuple" for
+ parse form that are not type instantiations.
+ * interp/i-coerce.boot (coerceInt1): Likewise.
+ * interp/i-intern.boot (mkAtree3): Likewise.
+ (collectDefTypesAndPreds): Likewise.
+ * interp/i-map.boot (args2Tuple): Likewise.
+ (makePattern): Likewise.
+ (canMakeTuple): Likewise.
+ (makeRuleForm): Likewise.
+ (numArgs): Likewise.
+ (combineMapParts): Likewise.
+ (mkMapPred): Likewise.
+ (findLocalVars1): Likewise.
+ * interp/i-output.boot (outputTran): Likewise.
+ * interp/i-spec1.boot ($specialOps): Likewise.
+ (evalUntargetedADEF): Likewise.
+ (upDeclare): Likewise.
+ (declare): Likewise.
+ * interp/i-spec2.boot (upDollarTuple): Likewise.
+ (upLET): Likewise.
+ (isTupleForm): Remove.
+ (uptuple): Rename from upTuple.
+ (upLETWithFormOnLhs): Use "tuple" for parse forms that are not
+ type instantiations.
+ * interp/i-syscmd.boot (displayMacro): Likewise.
+ * interp/pf2atree.boot (pf2Atree1): Likewise.
+ * interp/pf2sex.boot (pf2Sex1): Likewise.
+ (pfApplication2Sex): Likewise.
+ (pfCollectArgTran): Likewise.
+ * interp/ptrees.boot (pfTuple): Likewise.
+ (pfTuple?): Likewise.
+
2008-02-20 Gabriel Dos Reis <gdr@cs.tamu.edu>
* interp/i-coerce.boot (coerceInt1): Avoid misguided
diff --git a/src/algebra/Makefile.in b/src/algebra/Makefile.in
index 0facdd73..deb800da 100644
--- a/src/algebra/Makefile.in
+++ b/src/algebra/Makefile.in
@@ -856,9 +856,6 @@ axiom_algebra_layer_user_objects = \
$(addprefix $(OUT)/, \
$(addsuffix .$(FASLEXT),$(axiom_algebra_layer_user)))
-# The algebra build is not yet ready for parallel build.
-#.NOTPARALLEL:
-
.PHONY: all all-algebra mkdir-output-directory
all: all-ax
diff --git a/src/interp/i-analy.boot b/src/interp/i-analy.boot
index fc3d621f..b4b4226d 100644
--- a/src/interp/i-analy.boot
+++ b/src/interp/i-analy.boot
@@ -480,7 +480,7 @@ bottomUpFormTuple(t, op, opName, args, argModeSetList) ==
-- now make the args into a tuple
- newArg := [mkAtreeNode "Tuple",:args]
+ newArg := [mkAtreeNode "tuple",:args]
bottomUp [op, newArg]
removeUnionsAtStart(argl,modeSets) ==
diff --git a/src/interp/i-coerce.boot b/src/interp/i-coerce.boot
index bb331ea3..e0c896e4 100644
--- a/src/interp/i-coerce.boot
+++ b/src/interp/i-coerce.boot
@@ -864,7 +864,7 @@ coerceInt1(triple,t2) ==
[.,vars,:body] := unwrap val
vars :=
atom vars => [vars]
- vars is ['Tuple,:.] => rest vars
+ vars is ["tuple",:.] => rest vars
vars
#margl ^= #vars => 'continue
tree := mkAtree ['ADEF,vars,[target,:margl],[NIL for x in rest t2],:body]
diff --git a/src/interp/i-intern.boot b/src/interp/i-intern.boot
index 8eefe0d7..64951a32 100644
--- a/src/interp/i-intern.boot
+++ b/src/interp/i-intern.boot
@@ -1,4 +1,6 @@
--- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd.
+-- Copyright (C) 1991-2002, The Numerical Algorithms Group Ltd.
+-- All rights reserved.
+-- Copyright (C) 2007-2008, Gabriel Dos Reis.
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
@@ -13,7 +15,7 @@
-- the documentation and/or other materials provided with the
-- distribution.
--
--- - Neither the name of The Numerical ALgorithms Group Ltd. nor the
+-- - Neither the name of The Numerical Algorithms Group Ltd. nor the
-- names of its contributors may be used to endorse or promote products
-- derived from this software without specific prior written permission.
--
@@ -223,7 +225,7 @@ mkAtree3(x,op,argl) ==
v :=
null arg => VECTOR(NIL,NIL,NIL)
PAIRP arg and rest arg and first arg^= "|" =>
- collectDefTypesAndPreds ['Tuple,:arg]
+ collectDefTypesAndPreds ["tuple",:arg]
null rest arg => collectDefTypesAndPreds first arg
collectDefTypesAndPreds arg
[types,:r'] := r
@@ -240,7 +242,7 @@ mkAtree3(x,op,argl) ==
v :=
null arg => VECTOR(NIL,NIL,NIL)
PAIRP arg and rest arg and first arg^= "|" =>
- collectDefTypesAndPreds ['Tuple,:arg]
+ collectDefTypesAndPreds ["tuple",:arg]
null rest arg => collectDefTypesAndPreds first arg
collectDefTypesAndPreds arg
[types,:r'] := r
@@ -255,7 +257,7 @@ mkAtree3(x,op,argl) ==
-- keyedSystemError("S2II0003",['"when",y,'"improper argument form"])
-- a is [op,p1,:pr] =>
-- null pr => mkAtree1 ['DEF,[op,["|",p1,pred]],:r]
--- mkAtree1 ['DEF,[op,["|",['Tuple,p1,:pr],pred]],:r]
+-- mkAtree1 ['DEF,[op,["|",["tuple",p1,:pr],pred]],:r]
-- [mkAtreeNode 'DEF, CDR y,pred,false]
--x is ['otherwise,u] =>
-- throwMessage '" otherwise is no longer supported."
@@ -329,14 +331,14 @@ collectDefTypesAndPreds args ==
var is [":",var',type] =>
types := [type]
vars := [var']
- var is ['Tuple,:.] or var is ["|",:.] =>
+ var is ["tuple",:.] or var is ["|",:.] =>
v := collectDefTypesAndPreds var
vars := [:vars,:v.0]
types := [:types,:v.1]
pred := addPred(pred,v.2)
vars := [var]
types := [NIL]
- args is ['Tuple,:args'] =>
+ args is ["tuple",:args'] =>
for a in args' repeat
v := collectDefTypesAndPreds a
vars := [:vars,first v.0]
diff --git a/src/interp/i-map.boot b/src/interp/i-map.boot
index 40b87f1f..7d0d2b27 100644
--- a/src/interp/i-map.boot
+++ b/src/interp/i-map.boot
@@ -274,7 +274,7 @@ mkAliasList l == fn(l,nil) where fn(l,acc) ==
args2Tuple args ==
args is [first,:rest] =>
null rest => first
- ["Tuple",:args]
+ ["tuple",:args]
nil
makePattern(args,pred) ==
@@ -283,7 +283,7 @@ makePattern(args,pred) ==
pred is ["=","#1",n] => n
addPatternPred("#1",pred)
u:= canMakeTuple(nargs,pred) => u
- addPatternPred(["Tuple",:TAKE(nargs,$FormalMapVariableList)],pred)
+ addPatternPred(["tuple",:TAKE(nargs,$FormalMapVariableList)],pred)
addPatternPred(arg,pred) ==
pred=true => arg
@@ -293,7 +293,7 @@ canMakeTuple(nargs,pred) ==
pred is ["and",:l] and nargs=#l and
(u:= [(x is ["=",=y,a] => a; return nil)
for y in $FormalMapVariableList for x in orderList l]) =>
- ["Tuple",:u]
+ ["tuple",:u]
sayRemoveFunctionOrValue x ==
(obj := getValue x) and (md := objMode obj) =>
@@ -310,7 +310,7 @@ sayDroppingFunctions(op,l) ==
nil
makeRuleForm(op,pattern)==
- pattern is ["Tuple",:l] => [op,:l]
+ pattern is ["tuple",:l] => [op,:l]
[op,:pattern]
mkFormalArg(x,s) ==
@@ -940,7 +940,7 @@ numMapArgs(mapDef is [[args,:.],:.]) ==
numArgs args ==
args is ['_|,a,:.] => numArgs a
- args is ['Tuple,:argl] => #argl
+ args is ["tuple",:argl] => #argl
null args => 0
1
@@ -949,7 +949,7 @@ combineMapParts(mapTail) ==
-- statement. Uses %noBranch to indicate undefined branch
null mapTail => '%noMapVal
mapTail is [[cond,:part],:restMap] =>
- isSharpVarWithNum cond or (cond is ['Tuple,:args] and
+ isSharpVarWithNum cond or (cond is ["tuple",:args] and
and/[isSharpVarWithNum arg for arg in args]) or (null cond) => part
['IF,mkMapPred cond,part,combineMapParts restMap]
keyedSystemError("S2GE0016",['"combineMapParts",
@@ -958,7 +958,7 @@ combineMapParts(mapTail) ==
mkMapPred cond ==
-- create the predicate on map arguments, derived from "when" clauses
cond is ['_|,args,pred] => mapPredTran pred
- cond is ['Tuple,:vals] =>
+ cond is ["tuple",:vals] =>
mkValueCheck(vals,1)
mkValCheck(cond,1)
@@ -1003,7 +1003,7 @@ findLocalVars1(op,form) ==
for x in vars repeat
ATOM x => mkFreeVar(op, x)
form is ['LET,a,b] =>
- (a is ['Tuple,:vars]) and (b is ['Tuple,:vals]) =>
+ (a is ["tuple",:vars]) and (b is ["tuple",:vals]) =>
for var in vars for val in vals repeat
findLocalVars1(op,['LET,var,val])
a is ['construct,:pat] =>
@@ -1130,7 +1130,7 @@ getLocalVars(op,body) ==
-- The structure of maps:
-- (MAP (pattern . rewrite) ...) where
-- pattern has forms: arg-pattern
--- (Tuple arg-pattern ...)
+-- (tuple arg-pattern ...)
-- rewrite has forms: (WRAPPED . value) --don't re-evaluate
-- computational object --don't (bother to)
-- re-evaluate
diff --git a/src/interp/i-output.boot b/src/interp/i-output.boot
index c3d46723..ca2a31d8 100644
--- a/src/interp/i-output.boot
+++ b/src/interp/i-output.boot
@@ -342,7 +342,7 @@ outputTran x ==
x is ['ADEF,vars,.,.,body] =>
vars :=
vars is [x] => x
- ['Tuple,:vars]
+ ["tuple",:vars]
outputTran ["+->", vars, body]
x is ['MATRIX,:m] => outputTranMatrix m
x is ['matrix,['construct,c]] and
@@ -434,9 +434,9 @@ outputTran x ==
else op := 'OVER
l is [["-",a],:b] => outputTran ["-",[op,a,:b]]
[outputTran op,:l]
- op="|" and l is [["Tuple",:u],pred] =>
+ op="|" and l is [["tuple",:u],pred] =>
['PAREN,["|",['AGGLST,:l],pred]]
- op='Tuple => ['PAREN,['AGGLST,:l]]
+ op="tuple" => ['PAREN,['AGGLST,:l]]
op='LISTOF => ['AGGLST,:l]
IDENTP op and ^(op in '(_* _*_*) ) and char("*") = (PNAME op).0 =>
mkSuperSub(op,l)
diff --git a/src/interp/i-spec1.boot b/src/interp/i-spec1.boot
index f8408fa9..66b3fe9f 100644
--- a/src/interp/i-spec1.boot
+++ b/src/interp/i-spec1.boot
@@ -41,7 +41,7 @@ import '"i-analy"
$specialOps := '(
ADEF AlgExtension _and _case COERCE COLLECT construct Declare DEF Dollar
equation error free has IF _is _isnt iterate _break LET _local MDEF _or
- pretend QUOTE REDUCE REPEAT _return SEQ TARGET Tuple typeOf _where
+ pretend QUOTE REDUCE REPEAT _return SEQ TARGET tuple typeOf _where
_[_|_|_] )
$repeatLabel := NIL
@@ -101,7 +101,7 @@ evalUntargetedADEF(t,vars,types,body) ==
-- recreate a parse form
if vars is [var]
then vars := var
- else vars := ['Tuple,:vars]
+ else vars := ["tuple",:vars]
val := objNewWrap(["+->",vars,body],$AnonymousFunction)
putValue(t,val)
putModeSet(t,[objMode val])
@@ -1129,13 +1129,13 @@ upDeclare t ==
categoryForm?(mode) => throwKeyedMsgSP("S2IE0011",[mode, 'category],op)
packageForm?(mode) => throwKeyedMsgSP("S2IE0011",[mode, 'package],op)
junk :=
- lhs is ["free",['Tuple,:vars]] or lhs is ['free,['LISTOF,:vars]] or
+ lhs is ["free",["tuple",:vars]] or lhs is ['free,['LISTOF,:vars]] or
lhs is ["free",:vars] =>
- for var in vars repeat declare(['free,var],mode)
- lhs is ["local",['Tuple,:vars]] or lhs is ['local,['LISTOF,:vars]] or
+ for var in vars repeat declare(["free",var],mode)
+ lhs is ["local",["tuple",:vars]] or lhs is ["local",['LISTOF,:vars]] or
lhs is ["local",:vars] =>
for var in vars repeat declare(["local",var],mode)
- lhs is ["Tuple",:vars] or lhs is ["LISTOF",:vars] =>
+ lhs is ["tuple",:vars] or lhs is ["LISTOF",:vars] =>
for var in vars repeat declare(var,mode)
declare(lhs,mode)
putValue(op,objNewWrap(voidValue(), $Void))
@@ -1161,7 +1161,7 @@ declare(var,mode) ==
-- mapval looks like '(MAP (args . defn))
margs := CAADR mapval
-- if one args, margs is not a pair, just #1 or NIL
- -- otherwise it looks like (Tuple #1 #2 ...)
+ -- otherwise it looks like (tuple #1 #2 ...)
nargs :=
null margs => 0
PAIRP margs => -1 + #margs
diff --git a/src/interp/i-spec2.boot b/src/interp/i-spec2.boot
index 54603e03..51c34197 100644
--- a/src/interp/i-spec2.boot
+++ b/src/interp/i-spec2.boot
@@ -111,15 +111,15 @@ upDollar t ==
upDollarTuple(op, f, t, t2, args, nargs) ==
-- this function tries to find a tuple function to use
- nargs = 1 and getUnname first args = "Tuple" => NIL
- nargs = 1 and (ms := bottomUp first args) and ms is [["Tuple",.]] => NIL
+ -- nargs = 1 and getUnname first args = "Tuple" => NIL
+ -- nargs = 1 and (ms := bottomUp first args) and ms is [["Tuple",.]] => NIL
null (singles := isOpInDomain(f,t,1)) => NIL
tuple := NIL
for [[.,arg], :.] in singles while null tuple repeat
if arg is ['Tuple,.] then tuple := arg
null tuple => NIL
[.,D,form] := t2
- newArg := [mkAtreeNode "Tuple",:args]
+ newArg := [mkAtreeNode "tuple",:args]
putTarget(newArg, tuple)
ms := bottomUp newArg
first ms ^= tuple => NIL
@@ -485,7 +485,7 @@ upLET t ==
else if get(var,'isInterpreterRule,$e) then
putHist(var,'isInterpreterRule,false,$e)
sayKeyedMsg("S2IS0049",['"Rule",var])
- not isTupleForm(rhs) and (m := isType rhs) => upLETtype(op,lhs,m)
+ (m := isType rhs) => upLETtype(op,lhs,m)
transferPropsToNode(var,lhs)
if ( m:= getMode(lhs) ) then
$declaredMode := m
@@ -499,16 +499,6 @@ upLET t ==
putModeSet(op,[objMode(val)])
throwKeyedMsg("S2IS0027",[var])
-isTupleForm f ==
- -- have to do following since "Tuple" is an internal form name
- getUnname f ^= "Tuple" => false
- f is [op,:args] and VECP(op) and getUnname(op) = "Tuple" =>
- #args ^= 1 => true
- isTupleForm first args => true
- isType first args => false
- true
- false
-
evalLET(lhs,rhs) ==
-- lhs is a vector for a variable, and rhs is the evaluated atree
-- for the value which is coerced to the mode of lhs
@@ -609,8 +599,8 @@ upLETWithFormOnLhs(op,lhs,rhs) ==
-- bottomUp for assignment to forms (setelt, table or tuple)
lhs' := getUnnameIfCan lhs
rhs' := getUnnameIfCan rhs
- lhs' = 'Tuple =>
- rhs' ^= 'Tuple => throwKeyedMsg("S2IS0039",NIL)
+ lhs' = "tuple" =>
+ rhs' ^= "tuple" => throwKeyedMsg("S2IS0039",NIL)
#(lhs) ^= #(rhs) => throwKeyedMsg("S2IS0038",NIL)
-- generate a sequence of assignments, using local variables
-- to first hold the assignments so that things like
@@ -634,7 +624,7 @@ upLETWithFormOnLhs(op,lhs,rhs) ==
ms := bottomUp seq
putValue(op,getValue seq)
putModeSet(op,ms)
- rhs' = 'Tuple => throwKeyedMsg("S2IS0039",NIL)
+ rhs' = "tuple" => throwKeyedMsg("S2IS0039",NIL)
tree:= seteltable(lhs,rhs) => upSetelt(op,lhs,tree)
throwKeyedMsg("S2IS0060", NIL)
-- upTableSetelt(op,lhs,rhs)
@@ -1035,9 +1025,9 @@ evalSEQ(op,args,m) ==
objNew(code,m)
putValue(op,val)
---% Handlers for Tuple
+--% Handlers for tuple
-upTuple t ==
+uptuple t ==
--Computes the common mode set of the construct by resolving across
--the argument list, and evaluating
t isnt [op,:l] => nil
diff --git a/src/interp/i-syscmd.boot b/src/interp/i-syscmd.boot
index 6a942e06..f731ade7 100644
--- a/src/interp/i-syscmd.boot
+++ b/src/interp/i-syscmd.boot
@@ -946,7 +946,7 @@ displayMacro name ==
args :=
null args => nil
null rest args => first args
- ['Tuple,:args]
+ ["tuple",:args]
mathprint ['MAP,[args,:body]]
displayWorkspaceNames() ==
diff --git a/src/interp/pf2atree.boot b/src/interp/pf2atree.boot
index 15c76d23..56d7a832 100644
--- a/src/interp/pf2atree.boot
+++ b/src/interp/pf2atree.boot
@@ -78,7 +78,7 @@ pf2Atree1 pf ==
pfApplication2Atree pf
(pfTuple?)(pf) =>
- [mkAtreeNodeWithSrcPos("Tuple",pf),
+ [mkAtreeNodeWithSrcPos("tuple",pf),
:[pf2Atree1 x for x in (pf0TupleParts)(pf)]]
(pfIf?)(pf) =>
@@ -96,7 +96,7 @@ pf2Atree1 pf ==
tag := (pfTaggedTag)(pf)
tagPart :=
(pfTuple?) tag =>
- ["Tuple", :[pf2Sexpr(arg) for arg in (pf0TupleParts)(tag)]]
+ ["tuple", :[pf2Sexpr(arg) for arg in (pf0TupleParts)(tag)]]
pf2Sexpr(tag)
[mkAtreeNodeWithSrcPos("Declare",pf), tagPart,
pf2Sexpr((pfTaggedExpr)(pf))]
@@ -191,7 +191,7 @@ pf2Atree1 pf ==
ids := [x, :ids]
idList := [pf2Atree1 x for x in reverse ids]
if #idList ^= 1 then idList :=
- [mkAtreeNodeWithSrcPos("Tuple",pf), :idList]
+ [mkAtreeNodeWithSrcPos("tuple",pf), :idList]
else idList := first idList
x := [mkAtreeNodeWithSrcPos("LET",pf),
idList, pf2Atree1 (pfAssignRhs)(pf)]
diff --git a/src/interp/pf2sex.boot b/src/interp/pf2sex.boot
index b4cde2eb..0f82c889 100644
--- a/src/interp/pf2sex.boot
+++ b/src/interp/pf2sex.boot
@@ -75,14 +75,14 @@ pf2Sex1 pf ==
pfApplication? pf =>
pfApplication2Sex pf
pfTuple? pf =>
- ["Tuple", :[pf2Sex1 x for x in pf0TupleParts pf]]
+ ["tuple", :[pf2Sex1 x for x in pf0TupleParts pf]]
pfIf? pf =>
['IF, pf2Sex1 pfIfCond pf, pf2Sex1 pfIfThen pf, pf2Sex1 pfIfElse pf]
pfTagged? pf =>
tag := pfTaggedTag pf
tagPart :=
pfTuple? tag =>
- ['Tuple, :[pf2Sex1 arg for arg in pf0TupleParts tag]]
+ ["tuple", :[pf2Sex1 arg for arg in pf0TupleParts tag]]
pf2Sex1 tag
[":", tagPart, pf2Sex1 pfTaggedExpr pf]
pfCoerceto? pf =>
@@ -91,8 +91,7 @@ pf2Sex1 pf ==
["pretend", pf2Sex1 pfPretendExpr pf, pf2Sex1 pfPretendType pf]
pfFromdom? pf =>
op := opTran pf2Sex1 pfFromdomWhat pf
--- if op = "braceFromCurly" then op := "brace"
- if op = "braceFromCurly" then op := "SEQ"
+ if op = "%braceFromCurly" then op := "brace"
["$elt", pf2Sex1 pfFromdomDomain pf, op]
pfSequence? pf =>
pfSequence2Sex pf
@@ -119,7 +118,7 @@ pf2Sex1 pf ==
[":", pf2Sex1 pfTypedId pf, pf2Sex1 pfTypedType pf]
pfAssign? pf =>
idList := [pf2Sex1 x for x in pf0AssignLhsItems pf]
- if #idList ^= 1 then idList := ['Tuple, :idList]
+ if #idList ^= 1 then idList := ["tuple", :idList]
else idList := first idList
["LET", idList, pf2Sex1 pfAssignRhs pf]
pfDefinition? pf =>
@@ -254,21 +253,19 @@ pfApplication2Sex pf ==
["iterate"]
symEqual(op, "by") =>
["BY", :argSex]
- symEqual(op, "braceFromCurly") =>
--- ["brace", ["construct", :argSex]]
+ symEqual(op, "%braceFromCurly") =>
argSex is ["SEQ",:.] => argSex
- ["SEQ", :argSex]
+ ["brace", ["construct", :argSex]]
op is [qt, realOp] and symEqual(qt, "QUOTE") =>
["applyQuote", op, :argSex]
val := hasOptArgs? argSex => [op, :val]
[op, :argSex]
op is [qt, realOp] and symEqual(qt, "QUOTE") =>
pfFinishApplication ["applyQuote", op, pf2Sex1 args]
- symEqual(op, "braceFromCurly") => pfFinishApplication
--- ["brace", ["construct", pf2Sex1 args]]
+ symEqual(op, "%braceFromCurly") => pfFinishApplication
x := pf2Sex1 args
x is ["SEQ", :.] => x
- ["SEQ", x]
+ ["brace", ["construct", x]]
symEqual(op, "by") =>
pfFinishApplication ["BY", pf2Sex1 args]
symEqual(op, "[||]") =>
@@ -339,7 +336,7 @@ pfCollectArgTran pf ==
opTran op ==
op = $dotdot => "SEGMENT"
op = "[]" => "construct"
- op = "{}" => "braceFromCurly"
+ op = "{}" => "%braceFromCurly"
op = "IS" => "is"
op
diff --git a/src/interp/ptrees.boot b/src/interp/ptrees.boot
index b6ab6e37..d2849527 100644
--- a/src/interp/ptrees.boot
+++ b/src/interp/ptrees.boot
@@ -342,8 +342,8 @@ pfApplicationArg pf == CADDR pf -- was ==>
-- Tuple := (Parts: [Expr])
pfTupleListOf(pfparts) == pfTuple pfListOf pfparts
-pfTuple(pfparts) == pfTree('Tuple, [pfparts])
-pfTuple?(pf) == pfAbSynOp? (pf, 'Tuple)
+pfTuple(pfparts) == pfTree("tuple", [pfparts])
+pfTuple?(pf) == pfAbSynOp? (pf, "tuple")
pfTupleParts pf == CADR pf -- was ==>
pf0TupleParts pf == pfParts pfTupleParts pf