diff options
author | dos-reis <gdr@axiomatics.org> | 2007-10-17 04:31:11 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2007-10-17 04:31:11 +0000 |
commit | 3c643ccfe92e3fc3282a4701f70ce76b1199880e (patch) | |
tree | ddb197fa57e541286b03b682e22ee8f20ea5de56 /src/interp/i-funsel.boot.pamphlet | |
parent | ce09059aa3e8028ef11f5e9573bcc6fac593ef5e (diff) | |
download | open-axiom-3c643ccfe92e3fc3282a4701f70ce76b1199880e.tar.gz |
* g-util.boot (isDomain): Merge with version in interop.boot.pamphlet.
* i-funsel.boot.pamphlet (getFunctionFromDomain): Likewise.
* interop.boot.pamphlet (devaluate): Remove.
(isDomain): Likewise.
(NRTcompiledLookup): Likewise.
(compiledLookup): Likewise.
(basicLookup): Likewise.
(lookupInDomainVector): Likewise.
(lookupComplete): Likewise.
(lookupIncomplete): Likewise.
(lookupInCompactTable): Likewise.
(lazyMatchArg2): Likewise.
(getOpCode): Likewise.
(newExpandLocalType): Likewise.
(replaceGoGetSlot): Likewise.
(lazyMatchAssocV): Likewise.
(lazyDomainSet): Likewise.
(evalSlotDomain): Likewise.
(domainEqual): Likewise.
(coerceConvertMmSelection): Likewise.
(getFunctionFromDomain): Likewise.
Diffstat (limited to 'src/interp/i-funsel.boot.pamphlet')
-rw-r--r-- | src/interp/i-funsel.boot.pamphlet | 27 |
1 files changed, 5 insertions, 22 deletions
diff --git a/src/interp/i-funsel.boot.pamphlet b/src/interp/i-funsel.boot.pamphlet index bea96021..3ba29f64 100644 --- a/src/interp/i-funsel.boot.pamphlet +++ b/src/interp/i-funsel.boot.pamphlet @@ -715,39 +715,22 @@ hitListOfTarget(t) == EQ(CAR t,'Expression) => 1600 500 ---------------------> NEW DEFINITION (override in interop.boot.pamphlet) getFunctionFromDomain(op,dc,args) == -- finds the function op with argument types args in dc -- complains, if no function or ambiguous - $reportBottomUpFlag:local:= NIL member(CAR dc,$nonLisplibDomains) => throwKeyedMsg("S2IF0002",[CAR dc]) not constructor? CAR dc => throwKeyedMsg("S2IF0003",[CAR dc]) - - p := findFunctionInDomain(op,dc,NIL,args,args,NIL,NIL) - - -- NEW COMPILER COMPATIBILITY ON - - if not p then - p := - op = "^" => - findFunctionInDomain("**",dc,NIL,args,args,NIL,NIL) - op = "**" => - findFunctionInDomain("^",dc,NIL,args,args,NIL,NIL) - nil - - -- NEW COMPILER COMPATIBILITY OFF - - p => + p:= findFunctionInDomain(op,dc,NIL,args,args,NIL,NIL) => +--+ + --sig := [NIL,:args] domain := evalDomain dc for mm in nreverse p until b repeat - [[.,:sig],:.] := mm - b := compiledLookup(op,sig,domain) + [[.,:osig],nsig,:.] := mm + b := compiledLookup(op,nsig,domain) b or throwKeyedMsg("S2IS0023",[op,dc]) - - throwKeyedMsg("S2IF0004",[op,dc]) isOpInDomain(opName,dom,nargs) == |