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).