[M3devel] New VarArray package

Rodney M. Bates rodney_bates at lcwb.coop
Fri May 24 02:24:58 CEST 2013


There is now a new generic package named VarArray, that provides heavy weight
but very flexible self-expanding arrays.  They can be indexed by any ordinal type
and have any element type except open arrays.  As side-effects of various
operations, they keep track of the range of subscripts that have been stored into.
Occasionally, they reallocate the underlying array provided by the implementation,
also as a side-effect.

Subscript values can have ORD values in the entire range of INTEGER, although
obviously not this many elements can be occupied at one time.

There are also some ways of exerting manual control over space allocation and
a less safe but low-level, more efficient method of accessing.

A companion generic package Ranges is used by VarArray, but could possibly
have other uses on its own.

There is a test program for exercising them.

All is located in m3-libs/vararray.








More information about the M3devel mailing list