In current higher level languages arrays are parallelepiped in N dimensions, each dimension having an index range from a lower limit to an upper limit (both must be integers), the increment between valid index values being one.By removing the r e s t r i ction of limits and increments to be integers or unity, a homogenously addressed sections or t e a s of an array is defined. Co~.~ining several of these regions each with its own limits and increments but with com~non addressin~forms an array with varying data density.These new arrays are referred to as Varying Density Arrays (VDA).All data elements of a given region are restricted to a single format and structure.The element structure and format of one region in no way restricts elements in other regions. This generalization permits uniform addressing of conventional arrays, VDAs and PL/I or COBOL structures. This paper discusses (i) the concept of a VDA, (2) extensions to PL/I declarations to allow the definition of VDAs, (3) gives examples in PL/I and APL and discusses operations of VDAS and their subarrays.The paper touches on, but does not discuss, mappings to physical storage.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.