I have a few small packages for dealing with arrays of arrays, and similar things, which perhaps deserve announcement here:
LazyStack.jl has one function
stackwhich glues an array of arrays into one big one. It is also happy to take a generator, like
stack(f(x) for x in eachslice(A)), or a function to map over slices, like
stack(f, eachcol(x), eachcol(y)), in which case it writes into a new array, widening the type if necessary. The slices must all be the same
size, and are stacked along new dimension(s).
There is also a ragged variant
rstack, which makes enough space for the largest slice. You can use OffsetArrays to control their positions.
SliceMap.jl is much narrower, aiming to provide a fast, differentiable, version of
mapslices, primarily for columns of a matrix. There are various versions of this, some with static-array slices, and some which run multi-threaded. (By differentiable I mean that it defines gradients for Tracker & Zygote.)
StarSlice.jl is an experiment with notation for slicing, which overloads
collect.(eachcol(A)), and variants of that. Perhaps useful for
mapslicestype things, and perhaps as a way to write reductions. (This is not yet registered.)