| ▲ | flohofwoe an hour ago | |
Now that you mention it... :) Zig has MultiArrayList in the stdlib which does the SoA transform via comptime: https://ziglang.org/documentation/master/std/#std.multi_arra... Zig also sorts struct members by size/alignment, but has two escape hatches ('extern struct' which is for C compatibility, and 'packed struct' which offers an explicit bit-by-bit memory layout). AFAIK Odin and Jai offer the SoA transform as specialized language features, e.g. in Odin: https://odin-lang.org/docs/overview/#soa-data-types I'd still always want such data layout transforms as an explicit language feature though, not the compiler making this decision for me. | ||