Multidimensional Arrays

Bill Baxter dnewsgroup at billbaxter.com
Sun Feb 18 12:07:33 PST 2007


Neal Becker wrote:
> I think it makes a lot of sense to build arrays from 2 components.  One
> component is the storage.  The second component is the array, which is an
> interpretation of the storage.  I think this simplifies slicing and
> projections.

You mean exactly how Oskar and I are doing it?  Or you mean a more 
flexible notion of storage?  I agree it would be nice to be able to use 
different storage back ends besides strided memory.  Diagonal, 
Triangular, Sparse, Block, Banded, etc. would all be nice.  The Matrix 
Template Library did something like that, though I'd say with mixed results:
    http://www.osl.iu.edu/research/mtl/

The high-level idea is nice, but the end result was overly complicated 
IMHO, both internally and externally.  And it depended critically on 
good optimization from the compiler to get decent performance since 
everything was in C++ (no tie-in with optimized Fortran back-ends like 
ATLAS).

--bb



More information about the Digitalmars-d-announce mailing list