From a1bb5cce1d72ad7b20b2aa873fb08b372fc1fe45 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Sat, 10 Jul 2010 15:53:24 +0000 Subject: * interp/database.boot (addConsDB): Move from mapConsDB. * interp/nruncomp.boot (mapConsDB): Remove. (catList2catPackageList): Likewise. --- src/ChangeLog | 6 ++++++ src/interp/database.boot | 22 ++++++++++++++++++++++ src/interp/nruncomp.boot | 33 --------------------------------- 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,3 +1,9 @@ +2010-07-10 Gabriel Dos Reis + + * interp/database.boot (addConsDB): Move from mapConsDB. + * interp/nruncomp.boot (mapConsDB): Remove. + (catList2catPackageList): Likewise. + 2010-07-10 Gabriel Dos Reis * interp/functor.boot (setVector4): Remove. Deadcode. 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) -- cgit v1.2.3