> In a way it's no different than caching a pointer to an arena-allocated chunk 
> that may outlive the arena context. Maybe I'll think of migrating resources 
> up the context tree if their owner changes?

It is not different indeed. And once you have "migration" you effectively have 
a system with a `wasMoved` state and uniqueness and when you expand that you 
get reference counting. Which is better left to the programming language as the 
PL knows the types and the OS doesn't.

I did many experiments with bump pointer allocators and regions before deciding 
on ARC/ORC. Everything else simply does not work as well, all things considered 
(ease of use, resource consumption, composability).

Reply via email to