Re:Removing garbage collection from the Rust language
by pron on Monday June 03, 2013 @10:09AM
(#5813349)
Java does escape analysis, but if I remember correctly, it is no longer used for stack allocation (it is used for other advanced stuff, like lock elision, and replacing objects with scalars) because the JVM GCs have gotten so good that stack allocation provided no significant benefit. The reason is that stack allocation is relevant only for short-lived objects anyway, and for generational GCs, short-lived objects are (almost) a non-issue. GCs struggle much more with long-lived objects, which eventually require compaction, whose cost rises linearly with the size of the live data set. This is the cause of the problems with large heaps mentioned in the comments below.
[ Parent
| on HN ]
Re:Removing garbage collection from the Rust language
by specialist on Monday June 03, 2013 @11:39AM
(#5813875)
Very interesting. Thank you for the update. I'm more than a few years out of date. I may have to place new bets. :)
FWIW, Azul has presented to our local user group (seajug.org) a few times, most recently Nov 2012. There's video http://www.nimret.org/seajug/index.jsp?p=2012%2Fnov%2F By all accounts, their allocation and garbage collection implementations are the best available.