Open
Description
Languages, runtimes, libraries
These QAs need a way to be turned into something more focused, refined, useful
-
Does this implement a custom allocator or rely on native allocation?
- if custom:
- what allocation strategy?
- what do internal data structures look like? (tagged pointers? object headers?)
- does the allocator, or a layer above it, prevent pointers outliving the lifetime of the allocator? how?
- what collection strategy is implemented?
- if native (
Rc
/Arc
for example):- how are circular references traced?
- if custom:
-
Does the memory management allow for concurrent allocation and gc?
- green threads? OS threads?
- what mechanisms ensure heap coherency?
-
What is elegant and what feels awkward in Rust?
- what do the key structs and traits look like?
- how do data structures in the hosted language interact with the Rust language?
- how ergonomic is this?
- is mutable aliasing prevented in any way? compile-time or run-time?
-
https://github.com/jorendorff/cell-gc - idiomatic, safe Rust emphasis
-
https://gitlab.anu.edu.au/mu/immix-rust and http://users.cecs.anu.edu.au/~steveb/downloads/pdf/rust-ismm-2016.pdf - Immx
-
https://github.com/gluon-lang/gluon - generational
-
https://github.com/murarth/ketos -
Rc
based? -
https://github.com/oftlisp - uses
rust-gc
-
...
Garbage collection posts and papers to review
- https://manishearth.github.io/blog/2015/09/01/designing-a-gc-in-rust/
- https://manishearth.github.io/blog/2016/08/18/gc-support-in-rust-api-design/
- http://blog.pnkfx.org/blog/2015/10/27/gc-and-rust-part-0-how-does-gc-work/
- http://blog.pnkfx.org/blog/2015/11/10/gc-and-rust-part-1-specing-the-problem/
- http://blog.pnkfx.org/blog/2016/01/01/gc-and-rust-part-2-roots-of-the-problem/
- https://gist.github.com/pnkfelix/62f0d514e6f883382da2
Metadata
Metadata
Assignees
Labels
No labels