aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog6
-rw-r--r--src/algebra/bags.spad.pamphlet2
2 files changed, 7 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index fef2a847..495bdfde 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2008-01-13 Ralf Hemmecke <ralf@hemmecke.de>
+ Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * algebra/bags.spad.pamphlet (Stack$map!): Cache the result in the
+ underlying reference.
+
2008-01-11 Gabriel Dos Reis <gdr@cs.tamu.edu>
* interp/msg.boot (getStFromMsg): Fix typo.
diff --git a/src/algebra/bags.spad.pamphlet b/src/algebra/bags.spad.pamphlet
index ed8b82a6..9474a267 100644
--- a/src/algebra/bags.spad.pamphlet
+++ b/src/algebra/bags.spad.pamphlet
@@ -49,7 +49,7 @@ Stack(S: Type): StackAggregate S with
ref map(f, deref s)$List(S)
map!(f: S -> S, s: %) == -- from HOAGG
- map!(f, deref s)$List(S)
+ setref(s, map!(f, deref s)$List(S))
s
copy s == ref copy deref s