David,
I have been working on a generic stato-dynamic multi-dimensional
array that can enable something like what you propose. It uses
C++11 functionality (variadic templates and functions mainly).
Please take a look at:
https://github.com/nasosi/mdsdarray and
https://github.com/nasosi/mdsdarray/wiki/Interface-examples. The
developement is slow-paced because I am working on it at the rare
free time I have on weekends.
I am currently thinking of how to implement an appropriate
iterator that would be SIMD friendly. In that context I am
considering something across the lines of the interface of OpenCL
and CUDA. This would work nicely with the C+11 new for loops as
well.
If you think your proposal can build on top or even contribute to
mdsdarray, I can provide a version under a Boost or MIT license.
Best,
-Nasos
On 03/23/2013 08:47 AM, David Bellot wrote: