GC
archseer opened this issue · 0 comments
archseer commented
Probably either immix or orca. Each process gets it's own heap consisting of blocks that we independently GC.
At the moment we just use blocks as a sort of an arena GC: they belong to a process and get deallocated when a process drops (though no destructors are called, and we need to ensure the process unregisters in the process registry!!!)
Immix
- http://www.cs.utexas.edu/users/speedway/DaCapo/papers/immix-pldi-2008.pdf
- https://www.cs.tufts.edu/~nr/cs257/archive/steve-blackburn/rust-ismm-2016.pdf
- https://gitlab.com/inko-lang/inko/tree/master/vm/src/immix