add GPU-aware SoA implementation
based of https://github.com/JuliaArrays/StructsOfArrays.jl
I typically avoid checking in the Manifest (and that is part of the reason why StructArrays is not a package in itself). I have a cut down Manifest in-place for the test-env that are used by CI, which mostly avoids the churn of having to update them regularly.
No problem. For some reason I thought it was needed, I'll remove that commit.
Besides the GPU support, what are the advantages/disadvantages of the StructsOfArrays approach compared with the StructArrays.jl package?
Edit: Now see that you actually just opened an issue over on StructsArrays
Besides GPU support the big difference is that this implementation supports automatic recursive unpacking and currently handle's singleton types. (eg. structs with no fields).
StructArrays uses a function to determine to which level you are unpacking and also provides getfield overloading to access the underlying arrays with the fieldnames of a struct.