aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconfigure18
-rw-r--r--configure.ac2
-rw-r--r--configure.ac.pamphlet2
-rw-r--r--src/ChangeLog14
-rw-r--r--src/interp/category.boot2
-rw-r--r--src/interp/compiler.boot4
-rw-r--r--src/interp/define.boot69
-rw-r--r--src/interp/sys-globals.boot8
-rw-r--r--src/interp/wi1.boot1
-rw-r--r--src/interp/wi2.boot6
10 files changed, 94 insertions, 32 deletions
diff --git a/configure b/configure
index 73b23dfa..04549eda 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.3.0-2008-11-02.
+# Generated by GNU Autoconf 2.60 for OpenAxiom 1.3.0-2008-11-15.
#
# 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.3.0-2008-11-02'
-PACKAGE_STRING='OpenAxiom 1.3.0-2008-11-02'
+PACKAGE_VERSION='1.3.0-2008-11-15'
+PACKAGE_STRING='OpenAxiom 1.3.0-2008-11-15'
PACKAGE_BUGREPORT='open-axiom-bugs@lists.sf.net'
ac_unique_file="src/Makefile.pamphlet"
@@ -1405,7 +1405,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.3.0-2008-11-02 to adapt to many kinds of systems.
+\`configure' configures OpenAxiom 1.3.0-2008-11-15 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1475,7 +1475,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of OpenAxiom 1.3.0-2008-11-02:";;
+ short | recursive ) echo "Configuration of OpenAxiom 1.3.0-2008-11-15:";;
esac
cat <<\_ACEOF
@@ -1579,7 +1579,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-OpenAxiom configure 1.3.0-2008-11-02
+OpenAxiom configure 1.3.0-2008-11-15
generated by GNU Autoconf 2.60
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1593,7 +1593,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.3.0-2008-11-02, which was
+It was created by OpenAxiom $as_me 1.3.0-2008-11-15, which was
generated by GNU Autoconf 2.60. Invocation command line was
$ $0 $@
@@ -26424,7 +26424,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.3.0-2008-11-02, which was
+This file was extended by OpenAxiom $as_me 1.3.0-2008-11-15, which was
generated by GNU Autoconf 2.60. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -26473,7 +26473,7 @@ Report bugs to <bug-autoconf@gnu.org>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-OpenAxiom config.status 1.3.0-2008-11-02
+OpenAxiom config.status 1.3.0-2008-11-15
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 533e04a3..e7ea6fe6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
sinclude(config/open-axiom.m4)
sinclude(config/aclocal.m4)
-AC_INIT([OpenAxiom], [1.3.0-2008-11-02],
+AC_INIT([OpenAxiom], [1.3.0-2008-11-15],
[open-axiom-bugs@lists.sf.net])
AC_CONFIG_AUX_DIR(config)
diff --git a/configure.ac.pamphlet b/configure.ac.pamphlet
index 2581f937..c82719b1 100644
--- a/configure.ac.pamphlet
+++ b/configure.ac.pamphlet
@@ -1126,7 +1126,7 @@ information:
<<Autoconf init>>=
sinclude(config/open-axiom.m4)
sinclude(config/aclocal.m4)
-AC_INIT([OpenAxiom], [1.3.0-2008-11-02],
+AC_INIT([OpenAxiom], [1.3.0-2008-11-15],
[open-axiom-bugs@lists.sf.net])
@
diff --git a/src/ChangeLog b/src/ChangeLog
index 43370af4..976a5b20 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,17 @@
+2008-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * interp/category.boot: Define global vars.
+ * interp/compiler.boot: Likewise.
+ * interp/define.boot: Likewise.
+ * interp/sys-globals.boot: Likewise.
+ * interp/wi1.boot ($frontier): Removed, as unused.
+ * interp/wi2.boot ($attributesName): Likewise.
+ ($goGetList): Likewise.
+ ($NRTaddList): Likewise.
+ ($NRTloadTimeAlist): Likewise.
+ ($lisplibMissingFunctions): Likewise.
+ ($alternateViewList): Likewise.
+
2008-11-03 Gabriel Dos Reis <gdr@cs.tamu.edu>
* interp/br-data.boot: Remove uses of BOUNDP.
diff --git a/src/interp/category.boot b/src/interp/category.boot
index 20a4c686..c7d49b9c 100644
--- a/src/interp/category.boot
+++ b/src/interp/category.boot
@@ -41,6 +41,8 @@ namespace BOOT
++ List of global attributes.
$Attributes := []
+$NewCatVec := nil
+
--%
++ Returns true if `a' is a category (runtime) object.
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot
index f40155ce..7ada5375 100644
--- a/src/interp/compiler.boot
+++ b/src/interp/compiler.boot
@@ -1004,6 +1004,10 @@ compVector(l,m is ["Vector",mUnder],e) ==
[["VECTOR",:[T.expr for T in Tl]],m,e]
--% MACROS
+
+++ True if we are compiling a macro definition.
+$macroIfTrue := false
+
compMacro(form,m,e) ==
$macroIfTrue: local:= true
["MDEF",lhs,signature,specialCases,rhs]:= form
diff --git a/src/interp/define.boot b/src/interp/define.boot
index 5a88447a..58d33090 100644
--- a/src/interp/define.boot
+++ b/src/interp/define.boot
@@ -62,6 +62,47 @@ $doNotCompileJustPrint := false
++ stack of pending capsule function definitions.
$capsuleFunctionStack := []
+$functionStats := nil
+$functorStats := nil
+
+$lisplibCategory := nil
+$lisplibAncestors := nil
+$lisplibAbbreviation := nil
+$LocalDomainAlist := []
+$CheckVectorList := []
+$functorsUsed := []
+$setelt := nil
+$pairlis := []
+$functorTarget := nil
+$condAlist := []
+$uncondAlist := []
+$NRTslot1PredicateList := []
+$NRTattributeAlist := []
+$NRTslot1Info := nil
+$NRTdeltaListComp := []
+$NRTdomainFormList := []
+$template := nil
+$signature := nil
+$isOpPackageName := false
+$lisplibCategoriesExtended := []
+$lookupFunction := nil
+$byteAddress := nil
+$byteVec := nil
+$lisplibSlot1 := nil
+$sigAlist := []
+$predAlist := []
+$argumentConditionList := []
+$finalEnv := nil
+$initCapsuleErrorCount := nil
+$CapsuleModemapFrame := nil
+$CapsuleDomainsInScope := nil
+$signatureOfForm := nil
+$addFormLhs := nil
+$lisplibSuperDomain := nil
+$sigList := []
+$atList := []
+
+
--%
++ List of operations defined in a given capsule
@@ -111,10 +152,13 @@ makePredicate l ==
--% FUNCTIONS WHICH MUNCH ON == STATEMENTS
+++ List of packages used by the current domain.
+$packagesUsed := []
+
compDefine: (%Form,%Mode,%Env) -> %Maybe %Triple
compDefine(form,m,e) ==
$macroIfTrue: local := false
- $packagesUsed: local := false
+ $packagesUsed: local := []
compDefine1(form,m,e)
++ We are about to process the body of a capsule. If the capsule defines
@@ -298,10 +342,13 @@ compDefineCategory1(df is ['DEF,form,sig,sc,body],m,e,prefix,fal) ==
makeCategoryPredicates(form,$lisplibCategory)
compDefine1(mkCategoryPackage(form,cat,categoryCapsule),$EmptyMode,e)
[d,m,e]
+
+$tvl := []
+$mvl := []
makeCategoryPredicates(form,u) ==
- $tvl := TAKE(#rest form,$TriangleVariableList)
- $mvl := TAKE(#rest form,rest $FormalMapVariableList)
+ $tvl: local := TAKE(#rest form,$TriangleVariableList)
+ $mvl: local := TAKE(#rest form,rest $FormalMapVariableList)
fn(u,nil) where
fn(u,pl) ==
u is ['Join,:.,a] => fn(a,pl)
@@ -376,7 +423,6 @@ compDefineCategory2(form,signature,specialCases,body,m,e,
--Begin lines for category default definitions
$functionStats: local:= [0,0]
$functorStats: local:= [0,0]
- $frontier: local := 0
$getDomainCode: local := nil
$addForm: local:= nil
for x in sargl for t in rest signature' repeat
@@ -489,7 +535,6 @@ compDefineFunctor1(df is ['DEF,form,signature,$functorSpecialCases,body],
$Representation: local := nil
--Set in doIt, accessed in the compiler - compNoStacking
$LocalDomainAlist: local := [] --set in doIt, accessed in genDeltaEntry
- $LocalDomainAlist:= nil
$functorForm: local := nil
$functorLocalParameters: local := nil
SETQ($myFunctorBody, body)
@@ -520,10 +565,8 @@ compDefineFunctor1(df is ['DEF,form,signature,$functorSpecialCases,body],
stackAndThrow('" cannot produce category object: %1pb",[target])
$domainShell:= COPY_-SEQ ds
--+ copy needed since slot1 is reset; compMake.. can return a cached vector
- $attributesName:local := INTERN STRCONC(PNAME $op,'";attributes")
attributeList := disallowNilAttribute ds.2 --see below under "loadTimeAlist"
--+ 7 lines for $NRT follow
- $goGetList: local := nil
-->--these globals used by NRTmakeCategoryAlist, set by NRTsetVector4Part1
$condAlist: local := nil
$uncondAlist: local := nil
@@ -537,9 +580,7 @@ compDefineFunctor1(df is ['DEF,form,signature,$functorSpecialCases,body],
$NRTaddForm: local := nil -- see compAdd
$NRTdeltaList: local := nil --list of misc. elts used in compiled fncts
$NRTdeltaListComp: local := nil --list of compiled forms for $NRTdeltaList
- $NRTaddList: local := nil --list of fncts not defined in capsule (added)
$NRTdeltaLength: local := 0 -- =length of block of extra entries in vector
- $NRTloadTimeAlist: local := nil --used for things in slot4 (NRTsetVector4)
$NRTdomainFormList: local := nil -- of form ((gensym . (Repe...)) ...
-- the above optimizes the calls to local domains
$template: local:= nil --stored in the lisplib (if $NRTvec = true)
@@ -637,7 +678,6 @@ compDefineFunctor1(df is ['DEF,form,signature,$functorSpecialCases,body],
['MAKEPROP,MKQ $op,''infovec,getInfovecCode()])
$lisplibSlot1 := $NRTslot1Info
$lisplibOperationAlist:= operationAlist
- $lisplibMissingFunctions:= $CheckVectorList
lisplibWrite('"compilerInfo",
removeZeroOne ['SETQ,'$CategoryFrame,
['put,['QUOTE,op'],'
@@ -711,7 +751,6 @@ displayMissingFunctions() ==
--% domain view code
makeFunctorArgumentParameters(argl,sigl,target) ==
- $alternateViewList: local:= nil
$forceAdd: local:= true
$ConditionalOperators: local := nil
("append"/[fn(a,augmentSig(s,findExtras(a,target)))
@@ -765,7 +804,6 @@ genDomainView(viewName,originalName,c,viewSelector) ==
c is ['SubsetCategory,c',.] => c'
c
$e:= augModemapsFromCategory(originalName,viewName,nil,c,$e)
- --$alternateViewList:= ((viewName,:code),:$alternateViewList)
cd:= ["%LET",viewName,[viewSelector,originalName,mkDomainConstructor code]]
if null member(cd,$getDomainCode) then
$getDomainCode:= [cd,:$getDomainCode]
@@ -1098,6 +1136,8 @@ compArgumentConditions e ==
T := [.,.,e]:= compOrCroak(y,$Boolean,e)
[n,x,T.expr]
e
+
+$body := nil
addArgumentConditions($body,$functionName) ==
$argumentConditionList =>
@@ -1123,7 +1163,6 @@ canCacheLocalDomain(dom,elt)==
domargsglobal(dom) =>
$functorLocalParameters:= [:$functorLocalParameters,dom]
PUSH([dom,GENVAR(),[elt,$selector,$funcLocLen]],$usedDomList)
- $selcount:= $selcount+1
$funcLocLen:= $funcLocLen+1
nil
where
@@ -1165,6 +1204,9 @@ compileCases(x,$e) == -- $e is referenced in compile
getSpecialCaseAssoc() ==
[[R,:l] for R in rest $functorForm
for l in rest $functorSpecialCases | l]
+
+
+$savableItems := nil
compile u ==
[op,lamExpr] := u
@@ -1588,7 +1630,6 @@ compCategory(x,m,e) ==
domainOrPackage,:l] =>
$sigList: local := nil
$atList: local := nil
- $sigList:= $atList:= nil
for x in l repeat compCategoryItem(x,nil,e)
rep:= mkExplicitCategoryFunction(domainOrPackage,$sigList,$atList)
--if inside compDefineCategory, provide for category argument substitution
diff --git a/src/interp/sys-globals.boot b/src/interp/sys-globals.boot
index 07195934..ec56043b 100644
--- a/src/interp/sys-globals.boot
+++ b/src/interp/sys-globals.boot
@@ -437,6 +437,14 @@ $m := nil
_/SOURCEFILES := []
_/SPACELIST := []
+$extraParms := []
+
+$categoryPredicateList := []
+
+$getDomainCode := nil
+$addForm := nil
+$domainShell := nil
+
--%
$algebraOutputStream :=
diff --git a/src/interp/wi1.boot b/src/interp/wi1.boot
index 7f11de54..7f402883 100644
--- a/src/interp/wi1.boot
+++ b/src/interp/wi1.boot
@@ -1190,7 +1190,6 @@ compDefineCategory2(form,signature,specialCases,body,m,e,
--Begin lines for category default definitions
$functionStats: local:= [0,0]
$functorStats: local:= [0,0]
- $frontier: local := 0
$getDomainCode: local := nil
$addForm: local:= nil
for x in sargl for t in rest signature' repeat
diff --git a/src/interp/wi2.boot b/src/interp/wi2.boot
index 0dfed4bc..81a8cbe3 100644
--- a/src/interp/wi2.boot
+++ b/src/interp/wi2.boot
@@ -107,10 +107,8 @@ compDefineFunctor1(df, m,$e,$prefix,$formalArgList) ==
pp target
return nil
$domainShell:= COPY_-SEQ ds
- $attributesName:local := INTERN STRCONC(PNAME $op,'";attributes")
attributeList := ds.2 --see below under "loadTimeAlist"
--+ 7 lines for $NRT follow
- $goGetList: local := nil
-->--these globals used by NRTmakeCategoryAlist, set by NRTsetVector4Part1
$condAlist: local := nil
$uncondAlist: local := nil
@@ -124,9 +122,7 @@ compDefineFunctor1(df, m,$e,$prefix,$formalArgList) ==
$NRTaddForm: local := nil -- see compAdd
$NRTdeltaList: local := nil --list of misc. elts used in compiled fncts
$NRTdeltaListComp: local := nil --list of compiled forms for $NRTdeltaList
- $NRTaddList: local := nil --list of fncts not defined in capsule (added)
$NRTdeltaLength: local := 0 -- =length of block of extra entries in vector
- $NRTloadTimeAlist: local := nil --used for things in slot4 (NRTsetVector4)
$NRTdomainFormList: local := nil -- of form ((gensym . (Repe...)) ...
-- the above optimizes the calls to local domains
$template: local:= nil --stored in the lisplib (if $NRTvec = true)
@@ -223,7 +219,6 @@ compDefineFunctor1(df, m,$e,$prefix,$formalArgList) ==
['MAKEPROP,MKQ $op,''infovec,getInfovecCode()])
$lisplibSlot1 := $NRTslot1Info --NIL or set by $NRTmakeSlot1
$lisplibOperationAlist:= operationAlist
- $lisplibMissingFunctions:= $CheckVectorList
lisplibWrite('"compilerInfo",
['SETQ,'$CategoryFrame,
['put,['QUOTE,op'],'
@@ -238,7 +233,6 @@ compDefineFunctor1(df, m,$e,$prefix,$formalArgList) ==
[fun,['Mapping,:signature'],originale]
makeFunctorArgumentParameters(argl,sigl,target) ==
- $alternateViewList: local:= nil
$forceAdd: local:= true
$ConditionalOperators: local
target := markKillAll target