aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog5
-rw-r--r--src/interp/define.boot8
2 files changed, 8 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 640a0db8..5e229781 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,10 @@
2012-02-12 Gabriel Dos Reis <gdr@cs.tamu.edu>
+ * interp/define.boot (NRTcatCompare): Remove.
+ (NRTmakeCategoryAlist): Don't call NRTcatCompare. Tidy.
+
+2012-02-12 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
* interp/define.boot (depthAssocList): Take the cache as second
argument. Avoid globals. Adjust Callers.
(depthAssoc): Likewise. Adjust Caller.
diff --git a/src/interp/define.boot b/src/interp/define.boot
index e418aae0..b025b160 100644
--- a/src/interp/define.boot
+++ b/src/interp/define.boot
@@ -463,12 +463,12 @@ getCatAncestors x == [CAAR y for y in parentsOf opOf x]
NRTmakeCategoryAlist(db,e) ==
pcAlist := [:[[x,:true] for x in $uncondAlist],:$condAlist]
- $levelAlist: local := depthAssocList([CAAR x for x in pcAlist],hashTable 'EQ)
- opcAlist := sortBy(function NRTcatCompare,pcAlist)
+ levelAlist := depthAssocList([CAAR x for x in pcAlist],hashTable 'EQ)
+ opcAlist := sortBy(function(x +-> LASSOC(first(x).op,levelAlist)),pcAlist)
newPairlis := [[5 + i,:b] for [.,:b] in dbFormalSubst db for i in 1..]
slot1 := [[a,:k] for [a,:b] in dbSubstituteAllQuantified(db,opcAlist)
| (k := predicateBitIndex(b,e)) ~= -1]
- slot0 := [hasDefaultPackage opOf a for [a,:b] in slot1]
+ slot0 := [hasDefaultPackage a.op for [a,:b] in slot1]
sixEtc := [5 + i for i in 1..dbArity db]
formals := ASSOCRIGHT dbFormalSubst db
for x in slot1 repeat
@@ -490,8 +490,6 @@ encodeCatform(db,x) ==
x isnt [.,:.] or rest x isnt [.,:.] => x
[first x,:[encodeCatform(db,y) for y in rest x]]
-NRTcatCompare [catform,:pred] == LASSOC(first catform,$levelAlist)
-
hasDefaultPackage catname ==
defname := makeDefaultPackageName symbolName catname
constructor? defname => defname