diff options
author | dos-reis <gdr@axiomatics.org> | 2011-03-06 23:10:47 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2011-03-06 23:10:47 +0000 |
commit | 52956b84e708277f7f96ec5189866237a76a308a (patch) | |
tree | 0d404e554226215f53903ab704474fc8c0b443f2 /src | |
parent | 4a7b8e70463ca239030c406e89777e209f393c33 (diff) | |
download | open-axiom-52956b84e708277f7f96ec5189866237a76a308a.tar.gz |
* interp/i-eval.boot (mkEvalable): Simplify.
(mkEvalableMapping): Remove.
(mkEvalableRecord): Likewise.
(mkEvalableUnion): Likewise.
Diffstat (limited to 'src')
-rw-r--r-- | src/ChangeLog | 9 | ||||
-rw-r--r-- | src/interp/i-eval.boot | 23 |
2 files changed, 14 insertions, 18 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 12f9caeb..336f1501 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,4 +1,11 @@ -2011-03-06 Gabriel Dos Reis <gdr@cse.tamu.edu> +2011-03-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-eval.boot (mkEvalable): Simplify. + (mkEvalableMapping): Remove. + (mkEvalableRecord): Likewise. + (mkEvalableUnion): Likewise. + +2011-03-06 Gabriel Dos Reis <gdr@cs.tamu.edu> * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %c2s. * interp/lisp-backend.boot: Translate it. diff --git a/src/interp/i-eval.boot b/src/interp/i-eval.boot index e857253d..56e5fc33 100644 --- a/src/interp/i-eval.boot +++ b/src/interp/i-eval.boot @@ -49,12 +49,12 @@ evalDomain form == mkEvalable form == form is [op,:argl] => - op="QUOTE" => form - op="WRAPPED" => mkEvalable devaluate argl - op="Record" => mkEvalableRecord form - op="Union" => mkEvalableUnion form - op="Mapping"=> mkEvalableMapping form - op="Enumeration" => form + op is "QUOTE" => form + op is ":" => [op,second form,mkEvalable third form] + op is "WRAPPED" => mkEvalable devaluate argl + op in '(Record Union Mapping) => + [op,:[mkEvalable arg for arg in argl]] + op is 'Enumeration => form -- a niladic constructor instantiation goes by itself constructor? op and argl = nil => form loadIfNecessary op @@ -75,17 +75,6 @@ mkEvalable form == FBPIP form => BPINAME form form -mkEvalableMapping form == - [first form,:[mkEvalable d for d in rest form]] - -mkEvalableRecord form == - [first form,:[[":",n,mkEvalable d] for [":",n,d] in rest form]] - -mkEvalableUnion form == - isTaggedUnion form => - [first form,:[[":",n,mkEvalable d] for [":",n,d] in rest form]] - [first form,:[mkEvalable d for d in rest form]] - evaluateType0 form == -- Takes a parsed, unabbreviated type and evaluates it, replacing -- type valued variables with their values, and calling bottomUp |