From ab480e7c03c9f3ab95856eaff6e6493882ff0c36 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Sun, 16 Aug 2009 14:17:40 +0000 Subject: * interp/i-map.boot (addMap): Fix typo from last commit. * interp/compiler.boot (compElt): Fix thinko, one more time. * interp/nruncomp.boot (optDeltaEntry): Don't overquote VM forms for constants. * algebra/algext.spad.pamphlet: Call niladic functions with empty argument lists. * algebra/ddfact.spad.pamphlet: Likewise. * algebra/gpgcd.spad.pamphlet: Likewise. * algebra/modmon.spad.pamphlet: Likewise. * algebra/pf.spad.pamphlet: Likewise. * algebra/polycat.spad.pamphlet: Likewise. * algebra/twofact.spad.pamphlet: Likewise. * algebra/list.spad.pamphlet: "nil" is now a ocnstant. * algebra/string.spad.pamphlet: "space", "quote", "escape" are now constants. --- src/interp/compiler.boot | 4 ++-- src/interp/i-map.boot | 3 ++- src/interp/nruncomp.boot | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) (limited to 'src/interp') diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot index 344463ad..0689649a 100644 --- a/src/interp/compiler.boot +++ b/src/interp/compiler.boot @@ -1164,9 +1164,9 @@ compElt(form,m,E) == [anOp,aDomain,mmList]) mmList.(0) [sig,[pred,val]]:= modemap - #sig~=2 and ^val is ["elt",:.] => nil --what does the second clause do ???? + #sig ~= 2 and val isnt ["CONST",:.] => nil val := genDeltaEntry [opOf anOp,:modemap] - convert([["call",val],first rest sig,E], m) --implies fn calls used to access constants + convert([["call",val],first rest sig,E], m) compForm(form,m,E) --% HAS diff --git a/src/interp/i-map.boot b/src/interp/i-map.boot index 74829990..1fdc5b8f 100644 --- a/src/interp/i-map.boot +++ b/src/interp/i-map.boot @@ -162,6 +162,7 @@ addDefMap(['DEF,lhs,mapsig,.,rhs],pred) == addMap(lhs,rhs,pred) == [op,:argl] := lhs $sl: local:= nil + predList := nil formalArgList:= [mkFormalArg(makeArgumentIntoNumber x,s) for x in argl for s in $FormalMapVariableList] argList:= @@ -173,7 +174,7 @@ addMap(lhs,rhs,pred) == argPredList:= NREVERSE predList finalPred := -- handle g(a,T)==a+T confusion between pred=T and T variable - MKPF((pred and (pred = 'T) => [:argPredList,SUBLISNQ($sl,pred)]; argPredList),"and") + MKPF((pred and (pred ~= 'T) => [:argPredList,SUBLISNQ($sl,pred)]; argPredList),"and") body:= SUBLISNQ($sl,rhs) oldMap := (obj := get(op,'value,$InteractiveFrame)) => objVal obj diff --git a/src/interp/nruncomp.boot b/src/interp/nruncomp.boot index c0a3398c..751bf073 100644 --- a/src/interp/nruncomp.boot +++ b/src/interp/nruncomp.boot @@ -180,7 +180,7 @@ optDeltaEntry(op,sig,dc,eltOrConst) == MKQ x fn := compiledLookup(op,nsig,dcval) if null fn then return nil - eltOrConst="CONST" => ['XLAM,'ignore,MKQ SPADCALL fn] + eltOrConst="CONST" => ['XLAM,'ignore, SPADCALL fn] GETL(compileTimeBindingOf first fn,'SPADreplace) genDeltaEntry opMmPair == -- cgit v1.2.3