Sure.
N-d array is a well known entity in computer science; cell array is Matlab/Octave-specific aberration.
Since N-d array implies the same types of all the elements, and cell array allows elements of different types , cell array _definitely_ needs yet another level of indirection (pointer to the actual data structure containing the element, the data structure depends on element type), while N-d array may not need that level of indirection.
In other words, cell array is _necessarily_ something (array ?) of pointers
At least, in "C" N-d arrays do not use the above mentioned pointers. Elements are adjacent to each other in memory.
So, all in all, to me from computational point of view N-d array at _first_ sight looks more attractive. But devil is in the details.
As you know, octave is a community driven project. If you can come with an interp2 implementation that is proven to be more performant, I'm confident it'll be gladly integrated into octave.
However, I can see at least 2 potential performance penalty when using 4D matrices:
1) computing the linear index requires more operation for a 4D matrix than a 2D matrix (in other words: x(1,2,3,4) takes more time to compute than y(1,2)); when using cell array, you also need to index within the cell array, but you only do it once
2) manipulating slices or a larger matrix may result in copying the slice into another temporary location
These 2 issues obviously strongly depend on how the code is written. So again, I encourage you to give it a shot to see whether you can improve interp2 performances.
Michael.