Hi, David.
That’s beautiful! Thanks for putting that together and sharing it. I had previously had that same idea of creating a “telltale” 4D array, but it was in the context of demonstrating how the “reshape” function works. You might find this thread worth a look.
I’m not sure we have a way to get them to incorporate something like that into that Intro assignment, but I will bookmark your post and try to bring more attention to it at the least.
I think the terminology that they use for dimensions is in sync with how we talk about that in analytic geometry. Consider what we mean by “3D space” in geometry: you have 3 spatial dimensions and you have three “axes”, x, y and z, corresponding to those dimensions, right? How is that different than what we have here with multidimensional arrays?