It makes sense to store some data in a row-based format. For example, a position might be stored as two or three coordinates per row, and all of them will almost always be accessed simultaneously. Currently, arrow must store these as two or three separate vectors, but cache performance could potentially be improved if every coordinate for a given row were in the same location in memory.
The List type could satisfy this requirement, but it requires an additional offset vector which isn't necessary when every element is the same size. I think it would be helpful to define a new type that is essentially a List with every element having the same length. I think "Tuple" would be a natural fit for this type but I'm open to other suggestions.