3 ms·
Yep, or generational references [0] which also protect against that kind of thing ;) The array-centric approach is indeed more applicable at the high levels of
by verdagon 4y ago
Yep, or generational references [0] which also protect against that kind of thing ;)
The array-centric approach is indeed more applicable at the high levels of the program.
Sometimes I wonder if a language could use an array-centric approach at the high levels, and then an arena-based approach for all temporary memory. Elucent experimented with something like this for Basil once [1] which was fascinating.
[0] https://verdagon.dev/blog/generational-references https://verdagon.dev/blog/generational-references
[1] https://degaz.io/blog/632020/post.html https://degaz.io/blog/632020/post.html
- com2kid 4y ago> Yep, or generational references [0] which also protect against that kind of thing ;) First off, thank you for posting all your great articles on Vale! Second off, I just read the generational references blog post for the 3rd time and now it makes complete sense, like stupid obvious why did I have problems understanding this before sense. (PS: The link to the benchmarks is dead :( ) I hope some of the novel ideas in Vale make it out to the programming language world at large!
- verdagon 4y agoThank you! I just fixed the link, thanks for letting me know! And if any of my articles are ever confusing, feel welcome to swing by the discord or file an issue =) I'm pretty excited about all the memory safety advances languages have made in the last few years. Zig is doing some really interesting things (see Andrew's thread above), D's new static analysis for zero-cost memory safety hit the front page yesterday, we're currently prototyping Vale's region borrow checker, and it feels like the space is really exploding. Good time to be alive!
- yw3410 4y agoIt feels like it would work really well (you could even swap between arenas per frame). I've been wanting to try something similar but it's early days.