aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog6
-rw-r--r--src/interp/database.boot22
-rw-r--r--src/interp/nruncomp.boot33
3 files changed, 28 insertions, 33 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index cd3db9ff..121a5d43 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,11 @@
2010-07-10 Gabriel Dos Reis <gdr@cs.tamu.edu>
+ * interp/database.boot (addConsDB): Move from mapConsDB.
+ * interp/nruncomp.boot (mapConsDB): Remove.
+ (catList2catPackageList): Likewise.
+
+2010-07-10 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
* interp/functor.boot (setVector4): Remove. Deadcode.
(setVector4Onecat): Likewise.
(setVector4part3): Likewise.
diff --git a/src/interp/database.boot b/src/interp/database.boot
index 036f536c..3f4ced20 100644
--- a/src/interp/database.boot
+++ b/src/interp/database.boot
@@ -677,6 +677,28 @@ markUnique x ==
x.rest := [u,:rest x]
rest x
+addConsDB x ==
+ min x where
+ min x ==
+ y:=HGET($consDB,x)
+ y => y
+ cons? x =>
+ for z in tails x repeat
+ u:=min first z
+ if not EQ(u,first z) then z.first := u
+ HashCheck x
+ REFVECP x =>
+ for i in 0..MAXINDEX x repeat
+ x.i:=min (x.i)
+ HashCheck x
+ string? x => HashCheck x
+ x
+ HashCheck x ==
+ y:=HGET($consDB,x)
+ y => y
+ HPUT($consDB,x,x)
+ x
+ x
++ Tail of most function descriptors.
$FunctionDescriptorTail == '(NIL T ELT)
diff --git a/src/interp/nruncomp.boot b/src/interp/nruncomp.boot
index 11519ea2..6d76fe6e 100644
--- a/src/interp/nruncomp.boot
+++ b/src/interp/nruncomp.boot
@@ -554,13 +554,6 @@ reverseCondlist cl ==
u.rest := [x,:rest u]
alist
-catList2catPackageList u ==
---converts ((Set) (Module R) ...) to ((Set& $) (Module& $ R)...)
- [fn x for x in u] where
- fn [op,:argl] ==
- newOp := INTERN(strconc(PNAME op,"&"))
- addConsDB [newOp,"$",:argl]
-
NRTsetVector4a(sig,form,cond) ==
sig = '$ =>
domainList :=
@@ -682,32 +675,6 @@ NRTsubstDelta(initSig) ==
[first t,:[replaceSlotTypes(x) for x in rest t]]
t
-mapConsDB x ==
- [addConsDB y for y in x]
-
-addConsDB x ==
- min x where
- min x ==
- y:=HGET($consDB,x)
- y => y
- cons? x =>
- for z in tails x repeat
- u:=min first z
- if not EQ(u,first z) then z.first := u
- HashCheck x
- REFVECP x =>
- for i in 0..MAXINDEX x repeat
- x.i:=min (x.i)
- HashCheck x
- string? x => HashCheck x
- x
- HashCheck x ==
- y:=HGET($consDB,x)
- y => y
- HPUT($consDB,x,x)
- x
- x
-
-----------------------------SLOT1 DATABASE------------------------------------
updateSlot1DataBase [name,info] == HPUT($Slot1DataBase,name,info)