aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/interp/ChangeLog9
-rw-r--r--src/interp/Makefile.in9
-rw-r--r--src/interp/Makefile.pamphlet15
-rw-r--r--src/interp/cattable.boot.pamphlet22
-rw-r--r--src/interp/daase.lisp1
-rw-r--r--src/interp/simpbool.boot2
-rw-r--r--src/interp/sys-globals.boot5
7 files changed, 38 insertions, 25 deletions
diff --git a/src/interp/ChangeLog b/src/interp/ChangeLog
index 874ff605..2eb17b19 100644
--- a/src/interp/ChangeLog
+++ b/src/interp/ChangeLog
@@ -1,3 +1,12 @@
+2007-10-29 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * Makefile.pamphlet (cattable.$(FASLEXT)): New rule.
+ (simpbool.$(FASLEXT)): Likewise.
+ (<<cattable.clisp>>): Remove.
+ (<<simpbool.clisp>>): Likewise.
+ * cattable.boot.pamphlet: Push into package "BOOT". Fix syntax.
+ * simpbool.boot: Likewise.
+
2007-10-28 Gabriel Dos Reis <gdr@cs.tamu.edu>
* Makefile.pamphlet (category.$(FASLEXT)): New rule.
diff --git a/src/interp/Makefile.in b/src/interp/Makefile.in
index 33ed789e..88439f3f 100644
--- a/src/interp/Makefile.in
+++ b/src/interp/Makefile.in
@@ -456,6 +456,11 @@ match.$(FASLEXT): match.boot sys-macros.$(FASLEXT)
category.$(FASLEXT): category.boot g-util.$(FASLEXT)
$(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $<
+cattable.$(FASLEXT): cattable.boot simpbool.$(FASLEXT) g-util.$(FASLEXT)
+ $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $<
+
+simpbool.$(FASLEXT): simpbool.boot macros.$(FASLEXT)
+ $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $<
## Interface with the Aldor compiler.
ax.$(FASLEXT): ax.boot as.$(FASLEXT)
@@ -658,10 +663,6 @@ br-util.clisp: br-util.boot
@ echo 487 making $@ from $<
@ echo '(old-boot::boot "br-util.boot")' | ${DEPSYS}
-cattable.clisp: cattable.boot
- @ echo 215 making $@ from $<
- @ echo '(old-boot::boot "cattable.boot")' | ${DEPSYS}
-
c-doc.clisp: c-doc.boot
@ echo 219 making $@ from $<
@ echo '(old-boot::boot "c-doc.boot")' | ${DEPSYS}
diff --git a/src/interp/Makefile.pamphlet b/src/interp/Makefile.pamphlet
index f6d14df4..ae08a35e 100644
--- a/src/interp/Makefile.pamphlet
+++ b/src/interp/Makefile.pamphlet
@@ -1083,14 +1083,6 @@ $(axiom_build_texdir)/diagrams.tex: $(axiom_src_docdir)/diagrams.tex
$(INSTALL_DATA) $< $@
@
-\subsection{cattable.boot \cite{59}}
-
-<<cattable.clisp>>=
-cattable.clisp: cattable.boot
- @ echo 215 making $@ from $<
- @ echo '(old-boot::boot "cattable.boot")' | ${DEPSYS}
-@
-
\subsection{c-doc.boot \cite{60}}
<<c-doc.clisp>>=
@@ -1606,6 +1598,11 @@ match.$(FASLEXT): match.boot sys-macros.$(FASLEXT)
category.$(FASLEXT): category.boot g-util.$(FASLEXT)
$(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $<
+cattable.$(FASLEXT): cattable.boot simpbool.$(FASLEXT) g-util.$(FASLEXT)
+ $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $<
+
+simpbool.$(FASLEXT): simpbool.boot macros.$(FASLEXT)
+ $(BOOTSYS) -- --compile --boot="old" --output=$@ --load-directory=. $<
## Interface with the Aldor compiler.
ax.$(FASLEXT): ax.boot as.$(FASLEXT)
@@ -1794,8 +1791,6 @@ boot-pkg.$(FASLEXT): boot-pkg.lisp
<<br-util.clisp>>
-<<cattable.clisp>>
-
<<c-doc.clisp>>
<<clammed.clisp>>
diff --git a/src/interp/cattable.boot.pamphlet b/src/interp/cattable.boot.pamphlet
index d25eaf80..61b406c3 100644
--- a/src/interp/cattable.boot.pamphlet
+++ b/src/interp/cattable.boot.pamphlet
@@ -50,6 +50,10 @@
<<*>>=
<<license>>
+import '"simpbool"
+import '"g-util"
+)package "BOOT"
+
hasCat(domainOrCatName,catName) ==
catName='Object or catName='Type -- every domain is a Type (Object)
or GETDATABASE([domainOrCatName,:catName],'HASCATEGORY)
@@ -95,7 +99,7 @@ simpTempCategoryTable() ==
RPLACD(u,simpHasPred b)
simpCategoryTable() == main where
- main ==
+ main() ==
for key in HKEYS _*HASCATEGORY_-HASH_* repeat
entry := HGET(_*HASCATEGORY_-HASH_*,key)
null entry => HREM(_*HASCATEGORY_-HASH_*,key)
@@ -105,16 +109,16 @@ simpCategoryTable() == main where
HPUT(_*HASCATEGORY_-HASH_*,key,change)
simpHasPred(pred,:options) == main where
- main ==
+ main() ==
$hasArgs: local := IFCDR IFCAR options
simp pred
simp pred ==
pred is [op,:r] =>
- op = 'has => simpHas(pred,first r,first rest r)
+ op = "has" => simpHas(pred,first r,first rest r)
op = 'HasCategory => simp ['has,CAR r,simpDevaluate CADR r]
op = 'HasSignature =>
[op,sig] := simpDevaluate CADR r
- ['has,CAR r,['SIGNATURE,op,sig]]
+ ["has",CAR r,['SIGNATURE,op,sig]]
op = 'HasAttribute =>
form := ['has,a := CAR r,['ATTRIBUTE,b := simpDevaluate CADR r]]
simpHasAttribute(form,a,b)
@@ -231,7 +235,7 @@ encodeCategoryAlist(id,alist) ==
newEntry:=
argl => [[argl,:b]]
b
- u:= ASSOC(key,newAl) =>
+ u:= assoc(key,newAl) =>
argl => RPLACD(u,encodeUnion(id,first newEntry,rest u))
if newEntry ^= rest u then
p:= moreGeneralCategoryPredicate(id,newEntry,rest u) => RPLACD(u,p)
@@ -241,7 +245,7 @@ encodeCategoryAlist(id,alist) ==
newAl
encodeUnion(id,new:=[a,:b],alist) ==
- u := ASSOC(a,alist) =>
+ u := assoc(a,alist) =>
RPLACD(u,moreGeneralCategoryPredicate(id,b,rest u))
alist
[new,:alist]
@@ -323,7 +327,7 @@ mkCategoryExtensionAlistBasic cform ==
catPairUnion(oldList,newList,op,cat) ==
for pair in newList repeat
- u:= ASSOC(first pair,oldList) =>
+ u:= assoc(first pair,oldList) =>
rest u = rest pair => nil
RPLACD(u,addConflict(rest pair,rest u)) where addConflict(new,old) ==
quickOr(new,old)
@@ -346,7 +350,7 @@ simpOrUnion1(x,l) ==
[first l,:simpOrUnion1(x,rest l)]
mergeOr(x,y) ==
- x is ['has,a,b] and y is ['has,=a,c] =>
+ x is ["has",a,b] and y is ['has,=a,c] =>
testExtend(b,c) => y
testExtend(c,b) => x
nil
@@ -385,7 +389,7 @@ getConstructorExports(conform,:options) == categoryParts(conform,
GETDATABASE(opOf conform,'CONSTRUCTORCATEGORY),IFCAR options)
categoryParts(conform,category,:options) == main where
- main ==
+ main() ==
cons? := IFCAR options --means to include constructors as well
$attrlist: local := nil
$oplist : local := nil
diff --git a/src/interp/daase.lisp b/src/interp/daase.lisp
index 3d6b715c..2ef3529b 100644
--- a/src/interp/daase.lisp
+++ b/src/interp/daase.lisp
@@ -252,7 +252,6 @@
; (x . y) and doing an equal hash into this table.
(defvar *operation-hash* nil "given an operation name, what are its modemaps?")
-(defvar *hasCategory-hash* nil "answers x has y category questions")
(defvar *miss* nil "print out cache misses on getdatabase calls")
diff --git a/src/interp/simpbool.boot b/src/interp/simpbool.boot
index d79829c2..dbba7e5c 100644
--- a/src/interp/simpbool.boot
+++ b/src/interp/simpbool.boot
@@ -31,7 +31,7 @@
-- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
+import '"macros"
)package "BOOT"
simpBool x == dnf2pf reduceDnf be x
diff --git a/src/interp/sys-globals.boot b/src/interp/sys-globals.boot
index 144e13cd..9baac4f2 100644
--- a/src/interp/sys-globals.boot
+++ b/src/interp/sys-globals.boot
@@ -409,3 +409,8 @@ _/WSNAME := "NOBOOT"
CHR := nil
TOK := nil
+++ answers x has y category questions
+_*HASCATEGORY_-HASH_* := nil
+
+_*ANCESTORS_-HASH_* := nil
+