diff options
-rw-r--r-- | src/ChangeLog | 14 | ||||
-rw-r--r-- | src/interp/define.boot | 7 | ||||
-rw-r--r-- | src/interp/lisplib.boot | 3 | ||||
-rw-r--r-- | src/interp/nruncomp.boot | 6 | ||||
-rw-r--r-- | src/interp/nrunfast.boot | 71 | ||||
-rw-r--r-- | src/share/algebra/browse.daase | 2 | ||||
-rw-r--r-- | src/share/algebra/category.daase | 2 | ||||
-rw-r--r-- | src/share/algebra/compress.daase | 2 | ||||
-rw-r--r-- | src/share/algebra/interp.daase | 2 | ||||
-rw-r--r-- | src/share/algebra/operation.daase | 2 |
10 files changed, 19 insertions, 92 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 4bb3525e..69718a1f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,4 +1,16 @@ -2011-09-04 Gabriel Dos Reis <gdr@cse.tamu.edu> +2011-09-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (updateSlot1DataBase)e: Remove. + (newLookupInCategories1): Remove. + (newLookupInCategories): Do not call it. + * interp/define.boot ($isOpPackageName): Remove. + (compDefinFunctor1): Do not emit slot1 database info for category + defaulta. + ($lisplibSlot1): Remove. + * interp/lisplib.boot: Likewise. + (finalizeLisplib): Do not write slot1 info. + +2011-09-04 Gabriel Dos Reis <gdr@cs.tamu.edu> * interp/lisplib.boot (writeCategory): New, (finalizeLisplib): Use it. Write category bodies in generated diff --git a/src/interp/define.boot b/src/interp/define.boot index 4ec4fb55..8e9e7969 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -78,11 +78,9 @@ $NRTslot1Info := nil $NRTdeltaListComp := [] $template := nil $signature := nil -$isOpPackageName := false $lookupFunction := nil $byteAddress := nil $byteVec := nil -$lisplibSlot1 := nil $sigAlist := [] $predAlist := [] $argumentConditionList := [] @@ -1364,7 +1362,6 @@ compDefineFunctor1(df is ['DEF,form,signature,nils,body], $NRTslot1PredicateList: local := predicatesFromAttributes attributeList $NRTattributeAlist: local := NRTgenInitialAttributeAlist(db,attributeList) $NRTslot1Info: local := nil --set in NRTmakeSlot1Info - --this is used below to set $lisplibSlot1 global $NRTaddForm: local := nil -- see compAdd $NRTdeltaList: local := nil --list of misc. elts used in compiled fncts $NRTdeltaListComp: local := nil --list of compiled forms for $NRTdeltaList @@ -1425,9 +1422,6 @@ compDefineFunctor1(df is ['DEF,form,signature,nils,body], if $LISPLIB then if not $bootStrapMode then $NRTslot1Info := NRTmakeSlot1Info() - $isOpPackageName: local := isCategoryPackageName $op - if $isOpPackageName then lisplibWrite('"slot1DataBase", - ['updateSlot1DataBase,MKQ $NRTslot1Info],$libFile) $lisplibFunctionLocations := applySubst($pairlis,$functionLocations) libFn := getConstructorAbbreviationFromDB op' $lookupFunction: local := @@ -1439,7 +1433,6 @@ compDefineFunctor1(df is ['DEF,form,signature,nils,body], [simpBool x for x in $NRTslot1PredicateList] LAM_,FILEACTQ('loadTimeStuff, ['MAKEPROP,MKQ $op,''infovec,getInfovecCode()]) - $lisplibSlot1 := $NRTslot1Info $lisplibOperationAlist:= operationAlist -- Functors are incomplete during bootstrap if $bootStrapMode then diff --git a/src/interp/lisplib.boot b/src/interp/lisplib.boot index e8d85247..4debd68e 100644 --- a/src/interp/lisplib.boot +++ b/src/interp/lisplib.boot @@ -446,7 +446,6 @@ compConLib1(fun,infileOrNil,outfileOrNil,auxOp,editFlag,traceFlag) == $LISPLIB: local := 'T $lisplibPredicates: local := nil $lisplibModemapAlist: local := nil - $lisplibSlot1 : local := nil --used by NRT mechanisms $lisplibOperationAlist: local := nil $lisplibOpAlist: local:= nil $libFile: local := nil @@ -471,7 +470,6 @@ compDefineLisplib(df:=["DEF",[op,:.],:.],m,e,prefix,fal,fn) == $op: local := op $lisplibPredicates: local := nil -- set by makePredicateBitVector $lisplibModemapAlist: local := nil - $lisplibSlot1 : local := nil -- used by NRT mechanisms $lisplibOperationAlist: local := nil $lisplibOpAlist: local := nil --operations alist for new runtime system $lisplibSignatureAlist: local := nil @@ -614,7 +612,6 @@ finalizeLisplib(ctor,libName) == writePrincipals(ctor,removeZeroOne dbPrincipals db,$libFile) writeAncestors(ctor,removeZeroOne dbAncestors db,$libFile) lisplibWrite('"documentation",finalizeDocumentation ctor,$libFile) - lisplibWrite('"slot1Info",removeZeroOne $lisplibSlot1,$libFile) if $profileCompiler then profileWrite() leaveIfErrors(libName,kind) true diff --git a/src/interp/nruncomp.boot b/src/interp/nruncomp.boot index 545d6ac3..04603869 100644 --- a/src/interp/nruncomp.boot +++ b/src/interp/nruncomp.boot @@ -53,9 +53,6 @@ $insideCategoryPackageIfTrue := false $profileCompiler := false ++ -$Slot1DataBase := hashTable 'EQ - -++ $NRTdeltaList := [] $NRTdeltaLength := 0 @@ -732,9 +729,6 @@ NRTsubstDelta(initSig) == -----------------------------SLOT1 DATABASE------------------------------------ -updateSlot1DataBase [name,info] == - tableValue($Slot1DataBase,name) := info - NRTputInLocalReferences bod == NRTputInHead bod diff --git a/src/interp/nrunfast.boot b/src/interp/nrunfast.boot index de732ec2..ca246a3c 100644 --- a/src/interp/nrunfast.boot +++ b/src/interp/nrunfast.boot @@ -267,10 +267,8 @@ newLookupInDomain(op,sig,addFormDomain,dollar,index) == --======================================================= newLookupInCategories(op,sig,dom,dollar) == slot4 := domainData dom - catVec := second slot4 + [.,catVec,:.] := slot4 # catVec = 0 => nil --early exit if no categories - integer? KDR canonicalForm catVec => - newLookupInCategories1(op,sig,dom,dollar) --old style $lookupDefaults : local := false if $monitorNewWorld then sayBrightly concat('"----->", form2String devaluate dom,'"-----> searching default packages for ",op) @@ -333,73 +331,6 @@ nrunNumArgCheck(num,bytevec,start,finish) == (start := start + args + 4) = finish => nil nrunNumArgCheck(num,bytevec,start,finish) -newLookupInCategories1(op,sig,dom,dollar) == - $lookupDefaults : local := false - if $monitorNewWorld then sayBrightly concat('"----->", - form2String devaluate dom,'"-----> searching default packages for ",op) - predvec := domainPredicates dom - slot4 := domainData dom - packageVec := first slot4 - catVec := second slot4 - --the next three lines can go away with new category world - varList := ['$,:$FormalMapVariableList] - valueList := [dom,:[domainRef(dom,5+i) for i in 1..(#instantiationArgs dom)]] - valueList := [MKQ val for val in valueList] - nsig := MSUBST(canonicalForm dom,canonicalForm dollar,sig) - for i in 0..maxIndex packageVec | (entry := vectorRef(packageVec,i)) - and (vector? entry or (predIndex := rest (node := catVec.i)) and - (predIndex = 0 or testBitVector(predvec,predIndex))) repeat - package := - vector? entry => - if $monitorNewWorld then - sayLooking1('"already instantiated cat package",entry) - entry - ident? entry => - cat := first node - packageForm := nil - if not property(entry,'LOADED) then loadLib entry - infovec := property(entry,'infovec) - success := - vector? infovec => - opvec := infovec.1 - max := maxIndex opvec - code := getOpCode(op,opvec,max) - null code => nil - byteVector := CDDR infovec.3 - numOfArgs := arrayRef(byteVector,opvec.code) - numOfArgs ~= #sig.source => nil - packageForm := [entry,'$,:rest cat] - package := evalSlotDomain(packageForm,dom) - vectorRef(packageVec,i) := package - package - table := tableValue($Slot1DataBase,entry) or systemError nil - (u := LASSQ(op,table)) - and (v := or/[rest x for x in u | #sig = #x.0]) => - packageForm := [entry,'$,:rest cat] - package := evalSlotDomain(packageForm,dom) - vectorRef(packageVec,i) := package - package - nil - not success => - if $monitorNewWorld then - sayBrightlyNT '" not in: " - pp (packageForm and devaluate package or entry) - nil - if $monitorNewWorld then - sayLooking1('"candidate default package instantiated: ",success) - success - entry - null package => nil - if $monitorNewWorld then - sayLooking1('"Looking at instantiated package ",package) - res := lookupInDomainVector(op,sig,package,dollar) => - if $monitorNewWorld then - sayBrightly '"candidate default package succeeds" - return res - if $monitorNewWorld then - sayBrightly '"candidate fails -- continuing to search categories" - nil - --======================================================= -- Compare Signature to One Derived from Table --======================================================= diff --git a/src/share/algebra/browse.daase b/src/share/algebra/browse.daase index 872b0ba9..e6bb793c 100644 --- a/src/share/algebra/browse.daase +++ b/src/share/algebra/browse.daase @@ -1,5 +1,5 @@ -(2276909 . 3524180934) +(2276909 . 3524195383) (-18 A S) ((|constructor| (NIL "One-dimensional-array aggregates serves as models for one-dimensional arrays. Categorically,{} these aggregates are finite linear aggregates with the \\spadatt{shallowlyMutable} property,{} that is,{} any component of the array may be changed without affecting the identity of the overall array. Array data structures are typically represented by a fixed area in storage and therefore cannot efficiently grow or shrink on demand as can list structures (see however \\spadtype{FlexibleArray} for a data structure which is a cross between a list and an array). Iteration over,{} and access to,{} elements of arrays is extremely fast (and often can be optimized to open-code). Insertion and deletion however is generally slow since an entirely new data structure must be created for the result."))) NIL diff --git a/src/share/algebra/category.daase b/src/share/algebra/category.daase index 964e4287..3df28780 100644 --- a/src/share/algebra/category.daase +++ b/src/share/algebra/category.daase @@ -1,5 +1,5 @@ -(207263 . 3524180937) +(207263 . 3524195387) ((((-877)) . T)) ((((-877)) . T)) ((((-877)) . T)) diff --git a/src/share/algebra/compress.daase b/src/share/algebra/compress.daase index e66a31d7..ea3cdcbd 100644 --- a/src/share/algebra/compress.daase +++ b/src/share/algebra/compress.daase @@ -1,5 +1,5 @@ -(30 . 3524180933) +(30 . 3524195382) (4428 |Enumeration| |Mapping| |Record| |Union| |ofCategory| |isDomain| ATTRIBUTE |package| |domain| |category| CATEGORY |nobranch| AND |Join| |ofType| SIGNATURE "failed" "algebra" |OneDimensionalArrayAggregate&| diff --git a/src/share/algebra/interp.daase b/src/share/algebra/interp.daase index e803c11a..8137808b 100644 --- a/src/share/algebra/interp.daase +++ b/src/share/algebra/interp.daase @@ -1,5 +1,5 @@ -(3096901 . 3524180943) +(3096901 . 3524195393) ((-1935 (((-114) (-1 (-114) |#2| |#2|) $) 86 T ELT) (((-114) $) NIL T ELT)) (-1933 (($ (-1 (-114) |#2| |#2|) $) 18 T ELT) (($ $) NIL T ELT)) (-4218 ((|#2| $ (-558) |#2|) NIL T ELT) ((|#2| $ (-1255 (-558)) |#2|) 44 T ELT)) (-2510 (($ $) 80 T ELT)) (-4272 ((|#2| (-1 |#2| |#2| |#2|) $ |#2| |#2|) 52 T ELT) ((|#2| (-1 |#2| |#2| |#2|) $ |#2|) 50 T ELT) ((|#2| (-1 |#2| |#2| |#2|) $) 49 T ELT)) (-3839 (((-558) (-1 (-114) |#2|) $) 27 T ELT) (((-558) |#2| $) NIL T ELT) (((-558) |#2| $ (-558)) 96 T ELT)) (-3290 (((-661 |#2|) $) 13 T ELT)) (-3938 (($ (-1 (-114) |#2| |#2|) $ $) 64 T ELT) (($ $ $) NIL T ELT)) (-2160 (($ (-1 |#2| |#2|) $) 37 T ELT)) (-4388 (($ (-1 |#2| |#2|) $) NIL T ELT) (($ (-1 |#2| |#2| |#2|) $ $) 60 T ELT)) (-2517 (($ |#2| $ (-558)) NIL T ELT) (($ $ $ (-558)) 67 T ELT)) (-1468 (((-3 |#2| "failed") (-1 (-114) |#2|) $) 29 T ELT)) (-2158 (((-114) (-1 (-114) |#2|) $) 23 T ELT)) (-4230 ((|#2| $ (-558) |#2|) NIL T ELT) ((|#2| $ (-558)) NIL T ELT) (($ $ (-1255 (-558))) 66 T ELT)) (-2518 (($ $ (-558)) 76 T ELT) (($ $ (-1255 (-558))) 75 T ELT)) (-2157 (((-791) (-1 (-114) |#2|) $) 34 T ELT) (((-791) |#2| $) NIL T ELT)) (-1934 (($ $ $ (-558)) 69 T ELT)) (-3820 (($ $) 68 T ELT)) (-3950 (($ (-661 |#2|)) 73 T ELT)) (-4232 (($ $ |#2|) NIL T ELT) (($ |#2| $) NIL T ELT) (($ $ $) 87 T ELT) (($ (-661 $)) 85 T ELT)) (-4376 (((-877) $) 92 T ELT)) (-2159 (((-114) (-1 (-114) |#2|) $) 22 T ELT)) (-3454 (((-114) $ $) 95 T ELT)) (-3086 (((-114) $ $) 99 T ELT))) (((-18 |#1| |#2|) (-10 -8 (-15 -3454 ((-114) |#1| |#1|)) (-15 -4376 ((-877) |#1|)) (-15 -3086 ((-114) |#1| |#1|)) (-15 -1933 (|#1| |#1|)) (-15 -1933 (|#1| (-1 (-114) |#2| |#2|) |#1|)) (-15 -2510 (|#1| |#1|)) (-15 -1934 (|#1| |#1| |#1| (-558))) (-15 -1935 ((-114) |#1|)) (-15 -3938 (|#1| |#1| |#1|)) (-15 -3839 ((-558) |#2| |#1| (-558))) (-15 -3839 ((-558) |#2| |#1|)) (-15 -3839 ((-558) (-1 (-114) |#2|) |#1|)) (-15 -1935 ((-114) (-1 (-114) |#2| |#2|) |#1|)) (-15 -3938 (|#1| (-1 (-114) |#2| |#2|) |#1| |#1|)) (-15 -4218 (|#2| |#1| (-1255 (-558)) |#2|)) (-15 -2517 (|#1| |#1| |#1| (-558))) (-15 -2517 (|#1| |#2| |#1| (-558))) (-15 -2518 (|#1| |#1| (-1255 (-558)))) (-15 -2518 (|#1| |#1| (-558))) (-15 -4388 (|#1| (-1 |#2| |#2| |#2|) |#1| |#1|)) (-15 -4232 (|#1| (-661 |#1|))) (-15 -4232 (|#1| |#1| |#1|)) (-15 -4232 (|#1| |#2| |#1|)) (-15 -4232 (|#1| |#1| |#2|)) (-15 -4230 (|#1| |#1| (-1255 (-558)))) (-15 -3950 (|#1| (-661 |#2|))) (-15 -1468 ((-3 |#2| "failed") (-1 (-114) |#2|) |#1|)) (-15 -4272 (|#2| (-1 |#2| |#2| |#2|) |#1|)) (-15 -4272 (|#2| (-1 |#2| |#2| |#2|) |#1| |#2|)) (-15 -4272 (|#2| (-1 |#2| |#2| |#2|) |#1| |#2| |#2|)) (-15 -4230 (|#2| |#1| (-558))) (-15 -4230 (|#2| |#1| (-558) |#2|)) (-15 -4218 (|#2| |#1| (-558) |#2|)) (-15 -2157 ((-791) |#2| |#1|)) (-15 -3290 ((-661 |#2|) |#1|)) (-15 -2157 ((-791) (-1 (-114) |#2|) |#1|)) (-15 -2158 ((-114) (-1 (-114) |#2|) |#1|)) (-15 -2159 ((-114) (-1 (-114) |#2|) |#1|)) (-15 -2160 (|#1| (-1 |#2| |#2|) |#1|)) (-15 -4388 (|#1| (-1 |#2| |#2|) |#1|)) (-15 -3820 (|#1| |#1|))) (-19 |#2|) (-1238)) (T -18)) NIL diff --git a/src/share/algebra/operation.daase b/src/share/algebra/operation.daase index 9def43e8..a62bb079 100644 --- a/src/share/algebra/operation.daase +++ b/src/share/algebra/operation.daase @@ -1,5 +1,5 @@ -(719417 . 3524180935) +(719417 . 3524195385) (((*1 *2 *3 *4) (|partial| -12 (-5 *3 (-1288 *4)) (-4 *4 (-13 (-1070) (-658 (-558)))) (-5 *2 (-1288 (-419 (-558)))) (-5 *1 (-1317 *4))))) |