From e8e935c694c961342c781a6dcfbe636b85547449 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Mon, 13 Feb 2012 04:35:11 +0000 Subject: * interp/define.boot (getCatAncestors): Remove. Adjust caller. (depthAssoc): Tidy. (NRTmakeCategoryAlist): Tidy. --- src/interp/define.boot | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'src/interp') diff --git a/src/interp/define.boot b/src/interp/define.boot index b025b160..c2264f37 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -453,18 +453,16 @@ depthAssocList(u,cache) == depthAssoc(x,cache) == y := tableValue(cache,x) => y - x is ['Join,:u] or (u := getCatAncestors x) => + x is ['Join,:u] or (u := ASSOCLEFT parentsOfForm x) => v := depthAssocList(u,cache) tableValue(cache,x) := [[x,:n],:v] where n() == 1 + "MAX"/[rest y for y in v] tableValue(cache,x) := [[x,:0]] -getCatAncestors x == [CAAR y for y in parentsOf opOf x] - NRTmakeCategoryAlist(db,e) == pcAlist := [:[[x,:true] for x in $uncondAlist],:$condAlist] - levelAlist := depthAssocList([CAAR x for x in pcAlist],hashTable 'EQ) - opcAlist := sortBy(function(x +-> LASSOC(first(x).op,levelAlist)),pcAlist) + levelAlist := depthAssocList(ASSOCLEFT pcAlist,hashTable 'EQUAL) + opcAlist := sortBy(function(x +-> LASSOC(first x,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] -- cgit v1.2.3