YAXArrays.jl icon indicating copy to clipboard operation
YAXArrays.jl copied to clipboard

the YAXArray type

Open lazarusA opened this issue 4 months ago • 2 comments

For a long time @felixcremer has been advocating to remove the YAXArray type, hence the question here is:

what does that mean in terms of refactoring ? and what would the native displayed array? a DimArray? since we need dimension names to perform operations.

lazarusA avatar Jul 18 '25 09:07 lazarusA

Currently, a YAXArray is a special AbstractDimArray with additional fields for chunks and cleaner. A normal DimArray can't handle info about chunking and cleaning. A YAXArray is more and therefore needs its own type. For example, chunking is part of the show method of xarray. We probably want to display it as well.

A YAXArray is different from a Dataset, because it is a Variable i.e. a leaf in the tree of groups in the Common Data model. We need this type so we don't need to type ds.layer every time when there is just one array.

We don't need type YAXArray for functions matching x?map(Cube)?, but we need a type describing a ChunkedDiskDimArray.

danlooo avatar Jul 18 '25 11:07 danlooo

How do we want to model the lazyness as introduced by DiskArrayEngine? Type or trait? See also LazyArrays.jl

danlooo avatar Jul 31 '25 07:07 danlooo