
Marco wrote: [...]
However I think that Neal wants to start with something like a vector< vector<int> > and I didn't succeed in guessing if your library can manage it.
What I am looking for is: * A generalization of range to multi-dim (starting with, at minimum, 2d) * What makes range useful? The ability to generically traverse containers, accessing (ro/rw) the elements. The example I gave has an interface that looks like vector<vector>>, but that is a result of thinking about how I would like a generalization of range traversal to look. I didn't state it, but I imagine the 2d range would also support traversal by columns, and maybe other types of traversal. The row/col example was just an example (but a common one). Of course, not all 2d ranges would support all kinds of traversal.