@voidhawk as a minimum, my
Value
type stores shape (and also rank & ×/shape for ease-of-use) and has an abstract method for getting a
Value
version the n-th item, and has 2 subclasses - simple scalars (depth=0) & arrays. there's many little extra details, but that's the gist of it