diff options
author | dos-reis <gdr@axiomatics.org> | 2010-05-29 19:25:31 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2010-05-29 19:25:31 +0000 |
commit | a31ebb2c1b71c66ac34ffb0c27e6d7188ffb0906 (patch) | |
tree | 493366bf01adb5685ddf3a2c599ff0aaf2eac239 /src/interp/g-util.boot | |
parent | d983797f2d41c45fcf0679c7f4d1f90c1702ed2f (diff) | |
download | open-axiom-a31ebb2c1b71c66ac34ffb0c27e6d7188ffb0906.tar.gz |
* interp/compiler.boot (getExternalSymbolMode): Allow Lisp as
foreign language.
(checkExternalEntity): Likewise.
(compSignatureImport): Likewise. Give foreign variables dummy values.
* interp/c-util.boot (middleEndExpand): Handle %true and %false.
* interp/g-util.boot (expandToVMForm): Likewise.
Diffstat (limited to 'src/interp/g-util.boot')
-rw-r--r-- | src/interp/g-util.boot | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/interp/g-util.boot b/src/interp/g-util.boot index 2ab9d696..0a78b182 100644 --- a/src/interp/g-util.boot +++ b/src/interp/g-util.boot @@ -253,6 +253,9 @@ expandIadd ["%iadd",:args] == expandIsub ["%isub",:args] == ["-",:expandToVMForm args] +expandEq ["%eq",:args] == + ["EQ",:expandToVMForm args] + expandIeq ["%ieq",:args] == ["EQL",:expandToVMForm args] @@ -315,6 +318,7 @@ for x in [ ["%imax",:function expandImax], ["%igcd",:function expandIgcd], + ["%eq",:function expandEq], ["%ieq",:function expandIeq], ["%head",:function expandHead], @@ -332,6 +336,8 @@ getOpcodeExpander op == ++ Expand all opcodes contained in the form `x' into a form ++ suitable for evaluation by the VM. expandToVMForm x == + x = '%false => 'NIL + x = '%true => 'T isAtomicForm x => x [op,:args] := x IDENTP op and (fun:= getOpcodeExpander op) => apply(fun,x,nil) |