> for the compatibility, the default Hash#key_missing should be > class Hash > def key_missing(key) > nil > end > end > And my question is what functionality am I missing compare to > Hash@default and its accessors? (other than compatibility) well, if instead it's class Hash def key_missing(key) default end end then I don't think you're missing any functionality. Except that #[] (and such) call the internal Hash#default directly, so trying to overload/redefine it does not work. matju