I'm not sure I follow the argument (or agree with where the author places the blame).<p>Notwithstanding Ruby's handling of type safety or its implementation of arrays, isn't it my job (as the programmer) to know what kind of object I'm getting from the helper library? That is, when I get 'h' (in his example), the black box is how 'h' gets filled, not <i>what kind of collection object it is</i>.<p>Or am I confused?