5 ms·
There are a bunch of packages exploring ideas around labelled dimensions, although we are still far from the vision of caring as little as we do about registers
by mcabbott 7y ago
There are a bunch of packages exploring ideas around labelled dimensions, although we are still far from the vision of caring as little as we do about registers:
* https://github.com/JuliaArrays/AxisArrays.jl https://github.com/JuliaArrays/AxisArrays.jl
* https://github.com/davidavdav/NamedArrays.jl https://github.com/davidavdav/NamedArrays.jl
* https://github.com/invenia/NamedDims.jl https://github.com/invenia/NamedDims.jl
* https://github.com/rafaqz/DimensionalData.jl https://github.com/rafaqz/DimensionalData.jl
* https://github.com/ITensor/ITensors.jl https://github.com/ITensor/ITensors.jl
While these don't pass dimension labels along in the type, there are also a number of Einsum-like packages which should work on any storage order, and could be taught to interface with such types:
* https://github.com/Jutho/TensorOperations.jl https://github.com/Jutho/TensorOperations.jl
* https://github.com/under-Peter/OMEinsum.jl https://github.com/under-Peter/OMEinsum.jl
* https://github.com/mcabbott/TensorCast.jl https://github.com/mcabbott/TensorCast.jl