From 45ce0071c30e84b72e4c603660285fa6a462e7f7 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Wed, 7 Nov 2007 20:46:16 +0000 Subject: * Makefile.pamphlet (i-toplev.$(FASLEXT)): New rule. (i-syscmd.$(FASLEXT)): Likewise. (i-spec2.$(FASLEXT)): Likewise. (i-spec1.$(FASLEXT)): Likewise. (i-funsel.$(FASLEXT)): Likewise. (i-map.$(FASLEXT)): Likewise. (i-eval.$(FASLEXT)): Likewise. (i-coerfn.$(FASLEXT)): Likewise. (i-coerce.$(FASLEXT)): Likewise. (i-resolv.$(FASLEXT)): Likewise. (i-analy.$(FASLEXT)): Likewise. (i-code.$(FASLEXT)): Likewise. (i-intern.$(FASLEXT)): Likewise. (<>): Remove. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. (<>): Likewise. * apply.boot (compFormWithModemap): Fix syntax. * i-analy.boot.pamphlet: Push into package "BOOT". * i-code.boot.pamphlet: Likewise. * i-coerce.boot.pamphlet: Likewise. * i-coerfn.boot.pamphlet: Likewise. * i-eval.boot.pamphlet: Likewise. * i-funsel.boot.pamphlet: Likewise. * i-intern.boot.pamphlet: Likewise. * i-map.boot.pamphlet: Likewise. * i-resolv.boot.pamphlet: Likewise. * i-spec1.boot.pamphlet: Likewise. * i-spec2.boot.pamphlet: Likewise. * i-syscmd.bot.pamphlet: Likewise. * i-toplev.boot.pamphlet: Likewise. * i-util.boot.pamphlet: Likewise. --- src/interp/i-eval.boot.pamphlet | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/interp/i-eval.boot.pamphlet') diff --git a/src/interp/i-eval.boot.pamphlet b/src/interp/i-eval.boot.pamphlet index 3ec9050b..ed05090d 100644 --- a/src/interp/i-eval.boot.pamphlet +++ b/src/interp/i-eval.boot.pamphlet @@ -46,6 +46,9 @@ <<*>>= <> +import '"i-analy" +)package "BOOT" + --% Constructor Evaluation $noEvalTypeMsg := nil @@ -70,7 +73,7 @@ mkEvalable form == loadIfNecessary op kind:= GETDATABASE(op,'CONSTRUCTORKIND) cosig := GETDATABASE(op, 'COSIG) => - [op,:[val for x in argl for typeFlag in rest cosig]] where val == + [op,:[val for x in argl for typeFlag in rest cosig]] where val() == typeFlag => kind = 'category => MKQ x VECP x => MKQ x @@ -178,7 +181,7 @@ evaluateType1 form == ml := replaceSharps(ml,form) # argl ^= #ml => throwEvalTypeMsg("S2IE0003",[form,form]) for x in argl for m in ml for argnum in 1.. repeat - typeList := [v,:typeList] where v == + typeList := [v,:typeList] where v() == categoryForm?(m) => m := evaluateType MSUBSTQ(x,'_$,m) evalCategory(x' := (evaluateType x), m) => x' @@ -187,7 +190,7 @@ evaluateType1 form == GETDATABASE(opOf m,'CONSTRUCTORKIND) = 'domain and (tree := mkAtree x) and putTarget(tree,m) and ((bottomUp tree) is [m1]) => [zt,:zv]:= z1:= getAndEvalConstructorArgument tree - (v:= coerceOrRetract(z1,m)) => objValUnwrap v + (v' := coerceOrRetract(z1,m)) => objValUnwrap v' throwKeyedMsgCannotCoerceWithValue(zv,zt,m) if x = $EmptyMode then x := $quadSymbol throwEvalTypeMsg("S2IE0006",[makeOrdinal argnum,m,form]) -- cgit v1.2.3