Yeah, it would be nice to factor out mutability traits/implementations as a different package, so that Dictionaries.jl does not have to be responsible for all the advanced prototypings. IIUC DataFrames.jl also need something similar for names(df)
and df[!, col]
. But, previous discussion (and the resulting package ReadOnlyArrays.jl) did not explore mutability of indices/shape, IIRC. ArrayInterface.jl has similar traits (e.g., ismutable
) but it focuses on the mutability of values and not indices. Also, it focuses on arrays and not containers in general. Anyway, I guess you are already aware of many of these. I’m just re-emphasising that there are immediate needs for this in Julia ecosystem.
Looking at DataFrames, it looks like it still is not using ReadOnlyArrays. I wonder if there is still a plan to use this. As it needs two kinds of immutabilities (immutable values and immutable indices/shape), it looks like the best place for this to happen.