* Learning cube extension to store dimensions with different data types. Such index would be good alternative to compound key B-Tree multi-index (suitable for diapason queries and data ordering).
You mean, a cube containing something else than floats? I don't think we want to explode the number of datatypes by doing that, casting between them could be problematic.
At least option for having float4 cube instead of foat8 cube seems reasonable for me, because of space economy payed by less accuracy.
But I wonder if you could add cube-like operators for arrays. We already have support for arrays of any datatype, and any number of dimensions. That seems awfully lot like what the cube extension does.
I think we have at least 3 data types more or less similar to cube.
1) array of ranges
2) range of arrays
3) 2d arrays
Semantically cube is most close to array or ranges. However array of ranges have huge storage overhead.
Also we can declare cube as domain on 2d arrays and declare operations of that domain.