aboutsummaryrefslogtreecommitdiff
path: root/src/interp/nrunopt.boot.pamphlet
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2007-10-16 16:03:14 +0000
committerdos-reis <gdr@axiomatics.org>2007-10-16 16:03:14 +0000
commit004d25ab39f6f6867eb767bc7ba9b3fcce4e47a8 (patch)
tree8d0dbf9d56040f709a86a5d8de888a90b4081e1b /src/interp/nrunopt.boot.pamphlet
parentcead691f140a05967d095a596c0b1a41674669f8 (diff)
downloadopen-axiom-004d25ab39f6f6867eb767bc7ba9b3fcce4e47a8.tar.gz
* Makefile.pamphlet (INOBJS): Lose xrun.$(FASLEXT).
* clammed.boot.pamphlet (coerceConvertMmSelection): Merge modification in late xrun.boot. * i-coerce.boot.pamphlet (equalOne): Likewise. (equalZero): Likewise. (algEqual): Likewise. (coerceByFunction): Likewise. * i-eval.boot.pamphlet (evalFrom): Likewise. (findFunctionInDomain): Likewise. (findFunctionInDomain1): Likewise. (findFunctionInCategory): Likewise. * nrunfast.boot.pamphlet (replaceGoGetSlot): Likewise. (lazyMatchArg2): Likewise. (newExpandTypeSlot): Likewise. (newExpandLocalTypeForm): Likewise. (newExpandLocalTypeArgs): Likewise. (sigDomainVal): Likewise. * nrungo.boot.pamphlet (lazyCompareSigEqual): Likewise. * nrunopt.boot.pamphlet (NRTmakeCategoryAlist): Likewise. * sys-globals.boot ($noSubsumption): Likewise. * template.boot (evalSlotDomain): Likewise. * xrun.boot: Remove.
Diffstat (limited to 'src/interp/nrunopt.boot.pamphlet')
-rw-r--r--src/interp/nrunopt.boot.pamphlet18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/interp/nrunopt.boot.pamphlet b/src/interp/nrunopt.boot.pamphlet
index 672131fc..803828da 100644
--- a/src/interp/nrunopt.boot.pamphlet
+++ b/src/interp/nrunopt.boot.pamphlet
@@ -359,32 +359,32 @@ bitsOf n ==
--=======================================================================
-- Generate Slot 4 Constructor Vectors
--=======================================================================
---------------------> NEW DEFINITION (override in xrun.boot.pamphlet)
NRTmakeCategoryAlist() ==
$depthAssocCache: local := MAKE_-HASHTABLE 'ID
- pcAlist := [:[[x,:'T] for x in $uncondAlist],:$condAlist]
+ $catAncestorAlist: local := NIL
+ pcAlist := [:[[x,:"T"] for x in $uncondAlist],:$condAlist]
$levelAlist: local := depthAssocList [CAAR x for x in pcAlist]
opcAlist := NREVERSE SORTBY(function NRTcatCompare,pcAlist)
newPairlis := [[5 + i,:b] for [.,:b] in $pairlis for i in 1..]
- slot1 := [[a,:k] for [a,:b] in SUBLIS($pairlis,opcAlist)
+ slot1 := [[a,:k] for [a,:b] in SUBLIS($pairlis,opcAlist)
| (k := predicateBitIndex b) ^= -1]
slot0 := [hasDefaultPackage opOf a for [a,:b] in slot1]
sixEtc := [5 + i for i in 1..#$pairlis]
formals := ASSOCRIGHT $pairlis
- for x in slot1 repeat RPLACA(x,EQSUBSTLIST(sixEtc,formals,CAR x))
- -----------code to make a new style slot4-----------------
+ for x in slot1 repeat
+ RPLACA(x,EQSUBSTLIST(CONS("$$",sixEtc),CONS('$,formals),CAR x))
+ -----------code to make a new style slot4 -----------------
predList := ASSOCRIGHT slot1 --is list of predicate indices
maxPredList := "MAX"/predList
catformvec := ASSOCLEFT slot1
maxElement := "MAX"/$byteVec
- ['CONS, ['makeByteWordVec2,MAX(maxPredList,1),MKQ predList],
- ['CONS, MKQ LIST2VEC slot0,
+ ['CONS, ['makeByteWordVec2,MAX(maxPredList,1),MKQ predList],
+ ['CONS, MKQ LIST2VEC slot0,
['CONS, MKQ LIST2VEC [encodeCatform x for x in catformvec],
['makeByteWordVec2,maxElement,MKQ $byteVec]]]]
--NOTE: this is new form: old form satisfies VECP CDDR form
---------------------> NEW DEFINITION (override in xrun.boot.pamphlet)
-encodeCatform x ==
+encodeCatform x ==
k := NRTassocIndex x => k
atom x or atom rest x => x
[first x,:[encodeCatform y for y in rest x]]