ArenaAllocators don't play nicely with ArrayLists
Summary
The post explains how ArenaAllocators interact with ArrayLists in Zig, focusing on the conditions required for memory to be returned to the arena and why growth patterns can complicate deallocation. It offers practical guidance to avoid fragmentation, such as sizing buffers and avoiding interleaving allocations with appends, and notes that worst-case memory overhead can be significant in ArenaAllocator usage.