>> The term data structure has connotations to storage, manipulation
algorithms and efficiency all at a much lower implementation level while
types are at a higher logical level. <<
Unh? You would consider an array of integers to be at a lower level
of abstraction then a mere integer? That would mean that scalar
arithmetic has to depend on array arithmetic, etc. Explain. I would
model this with an integer type with rules and operators, then build
integer arrays on top that model, extending the rules and operators
with access rules from the data structure.
For example, an additive operation, say +, on a 2D array that produces
a result R[i,j] is defined by (FOR ALL R[i,j] := (A[i,j] + B[i,j]))
where + is the scalar version from which we are building the
structured version.


|