On Tue, Jul 30, 2013 at 4:26 PM, Jonathan S. Shapiro <[email protected]>wrote:

>
> Region-Based Memory Management in 
> Cyclone<http://www.eecs.harvard.edu/~greg/cyclone/papers/cyclone-regions.pdf>
>
>
> The discussion you want is associated with Figure 1 at the top of page 3.
> And note in particular rstrdup() in that figure, which exploits first-class
> regions.
>

Thanks. That's useful to see the source of legacy terminology, but that
system does not support GC collection of objects in dynamic-regions. All
objects allocated into a region live until that region goes out of scope.
This is why their concept of returning refs is so simple. As long as the
region stays in scope, everything in the region stays in scope.

I also don't like the last-in-first out discipline, since it seriously
limits what regions can do (as I mentioned in my practical examples).

I guess this is why I like thinking of "lifetimes" as an independent
feature, because I would like it solved for generalized GC-able objects
whether or not regions are implemented. Perhaps this is just a linguistic
difference, since we could call value-type box a region. Seems like a
terminology mismatch to me though.
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to