aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog8
-rw-r--r--src/interp/i-eval.boot5
-rw-r--r--src/interp/nrungo.boot17
-rw-r--r--src/interp/sys-globals.boot5
4 files changed, 17 insertions, 18 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index e3908535..313233cf 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,11 @@
+2011-02-10 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * interp/sys-globals.boot ($evalDomain): Remove.
+ * interp/nrungo.boot (NRTevalDomain): Likewise. Fix callers to call
+ evalDomain.
+ * interp/i-eval.boot (evalDomain): Don't check for $evalDomain
+ anymore. Handle assignment to domain object forms.
+
2011-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu>
Add MappingCategory as a (builtin) category.
diff --git a/src/interp/i-eval.boot b/src/interp/i-eval.boot
index 05de7540..f9c39d4f 100644
--- a/src/interp/i-eval.boot
+++ b/src/interp/i-eval.boot
@@ -1,6 +1,6 @@
-- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd.
-- All rights reserved.
--- Copyright (C) 2007-2010, Gabriel Dos Reis.
+-- Copyright (C) 2007-2011, Gabriel Dos Reis.
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
@@ -40,10 +40,9 @@ namespace BOOT
$noEvalTypeMsg := nil
evalDomain form ==
- if $evalDomain then
- sayMSG concat('" instantiating","%b",prefix2String form,"%d")
startTimingProcess 'instantiation
newType? form => form
+ form is ['setShellEntry,:.] => eval form
result := eval mkEvalable form
stopTimingProcess 'instantiation
result
diff --git a/src/interp/nrungo.boot b/src/interp/nrungo.boot
index b446b4cd..e459c30c 100644
--- a/src/interp/nrungo.boot
+++ b/src/interp/nrungo.boot
@@ -1,6 +1,6 @@
-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd.
-- All rights reserved.
--- Copyright (C) 2007-2010, Gabriel Dos Reis.
+-- Copyright (C) 2007-2011, Gabriel Dos Reis.
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
@@ -59,16 +59,11 @@ isInstantiated [op,:argl] ==
-- Lookup From Interpreter
--=======================================================
-NRTevalDomain form ==
- form is ["setShellEntry",:.] => eval form
- form is ['SETELT,:.] => systemErrorHere ["NRTevalDomain",form]
- evalDomain form
-
--------------------> NEW DEFINITION (see interop.boot.pamphlet)
compiledLookup(op,sig,dollar) ==
--called by coerceByFunction, evalForm, findEqualFun, findUniqueOpInDomain,
-- getFunctionFromDomain, optDeltaEntry, retractByFunction
- if not vector? dollar then dollar := NRTevalDomain dollar
+ if not vector? dollar then dollar := evalDomain dollar
-- "^" is an alternate name for "**" in OpenAxiom libraries.
-- ??? When, we get to support Aldor libraries and the equivalence
-- ??? does not hold, we may want to do the reverse lookup too.
@@ -116,11 +111,11 @@ goGet(:l) ==
lookupDomain :=
domainSlot = 0 => thisDomain
thisDomain.domainSlot -- where we look for the operation
- if cons? lookupDomain then lookupDomain := NRTevalDomain lookupDomain
+ if cons? lookupDomain then lookupDomain := evalDomain lookupDomain
dollar := -- what matches $ in signatures
explicitLookupDomainIfTrue => lookupDomain
thisDomain
- if cons? dollar then dollar := NRTevalDomain dollar
+ if cons? dollar then dollar := evalDomain dollar
fn:= basicLookup(op,sig,lookupDomain,dollar)
fn = nil => keyedSystemError("S2NR0001",[op,sig,lookupDomain.0])
val:= apply(first fn,[:arglist,rest fn])
@@ -131,7 +126,7 @@ NRTreplaceLocalTypes(t,dom) ==
atom t =>
not integer? t => t
t:= dom.t
- if cons? t then t:= NRTevalDomain t
+ if cons? t then t:= evalDomain t
t.0
first t in '(Mapping Union Record _:) =>
[first t,:[NRTreplaceLocalTypes(x,dom) for x in rest t]]
@@ -277,7 +272,7 @@ lazyCompareSigEqual(s,tslot,dollar,domain) ==
integer? tslot and cons?(lazyt:=domain.tslot) and cons? s =>
lazyt is [.,.,.,[.,item,.]] and
item is [.,[functorName,:.]] and functorName = first s =>
- compareSigEqual(s,(NRTevalDomain lazyt).0,dollar,domain)
+ compareSigEqual(s,(evalDomain lazyt).0,dollar,domain)
nil
compareSigEqual(s,NRTreplaceLocalTypes(tslot,domain),dollar,domain)
diff --git a/src/interp/sys-globals.boot b/src/interp/sys-globals.boot
index 9b5f8415..b956bfdf 100644
--- a/src/interp/sys-globals.boot
+++ b/src/interp/sys-globals.boot
@@ -1,6 +1,6 @@
-- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd.
-- All rights reserved.
--- Copyright (C) 2007-2010, Gabriel Dos Reis.
+-- Copyright (C) 2007-2011, Gabriel Dos Reis.
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
@@ -92,9 +92,6 @@ $currentLine := nil
$domainTraceNameAssoc := []
++
-$evalDomain := false
-
-++
$exitModeStack := []
++