It seems the main complaint is about confusing shapes / dimensions. Xarray has already be mentioned, but this is a broader concept, called named dimensions, sometimes also named tensors, named axes, labeled tensors, etc, which has often been proposed before, and many implementations exists.
https://nlp.seas.harvard.edu/NamedTensor
https://namedtensor.github.io/
https://docs.pytorch.org/docs/stable/named_tensor.html
https://github.com/JuliaArrays/AxisArrays.jl
https://github.com/ofnote/tsalib
https://github.com/google-deepmind/tensor_annotations
https://github.com/google-deepmind/penzai
https://github.com/tensorflow/mesh/
https://github.com/facebookresearch/torchdim
https://returnn.readthedocs.io/en/latest/getting_started/dat... (that's my own development; unfortunately the doc is very much outdated on that)
Someone just need to write a new named multi-dimentional array processing library in Dlang with Mir since it's more intuitive and faster than venerable Fortran library that's being widely used by array languages including Matlab, Julia, etc [1], based the implementation on the methodology presented in the seminal book by Hart [2], problem solved.
[1] Numeric age for D: Mir GLAS is faster than OpenBLAS and Eigen (2016):
http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/...
[2] Multidimensional Analysis: Algebras and Systems for Science and Engineering (1993):