Vale's Memory Safety Strategy: Generational References and Regions
Created on 2023-11-19T22:03:24-06:00
- When handing out a resource: increment a counter from storage
- Pair a handle to the resource with the generation count
- Check the generation count matches the depository on every access
Vale removes redundant liveness checks if it can prove, statically, that they are not needed. Other shenanigans (arena allocation?) can be used when an algorithm needs to work on a block of scratch space without paying for constant generation checks.
Search slugs
- generational reference
- generational allocation