Caveat: I know nothing (in general and in particular :).

>    harp:~ > ruby -e' class C < Array;end; p C::new.map{}.class '
>    Array
>
> print 'C' to be consistent with the above?  why the difference?  what's the
> grand plan?

c:\>ruby -ve "p Hash.new.map{}.class"
ruby 1.8.2 (2004-12-25) [i386-mswin32]
Array

I think that #map comes from Enumerable, which always returns an array.

Cheers,
Assaph