> Keith wrote (snipped)
> > But George Russell's implementation relied on looking up something in
> > one map with a key obtained from another map. I thought type-safe
> > MRefs should disallow this.
>
> However if you disallow lookup up in one map with a key from another,
> then Ralf Hinze's solution of putting the value inside the key
> uses no type extentions and works perfectly well (though is probably
> not quite what was intended).
No, because update should not return a new key, it should update the
value of the same key. In other words,
let (m1,k) = insert empty "A"
m2 = update m1 k "B"
in
lookup m2 k
should give "B", not "A", just like with MRefs.
--KW 8-)
_______________________________________________
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell