1. A computer-implemented method of accessing heterogeneous objects in an array, comprising: providing an abstract heterogeneous array class for an array-based language in a programming environment provided by a computing device; deriving a base class from the abstract heterogeneous array class; deriving, directly or indirectly, a plurality of unique heterogeneous subclasses from the base class; instantiating objects from the plurality of subclasses to create a plurality of subclass instances; populating an array in the programming environment with a plurality of instances instantiated from the group of the plurality of subclasses and the base class; identifying programmatically with the computing device a greatest common base class for the plurality of subclasses, the greatest common base class hierarchically common to the plurality of subclasses; calling a specified method with the array as a parameter, the specified method supported by the greatest common base class, the method call operating on the array in the programming environment as an array consisting of greatest common base class objects, a result of the method call stored or displayed.