On 12/6/13 10:12 AM, Niko Matsakis wrote:
I am not especially happy with these two changes. They feel hokey and
special purpose. I guess the best sol'n depends on the degree of static
safety we want. Without something like the `'return` lifetime, I'm not
sure how we can guarantee that `Root` values follow a stack discipline
-- and maybe we don't want to, because it does remove some flexibility
(e.g., roots in data structures that transitively are tied to the
stack and hence do follow a stack discipline).

Wouldn't these data structures be instead traced by the JS GC? ISTM if you are putting roots in a data structure it is best to make the data structure itself traced.

I think it's important to have this be safe in an ironclad sense--this is one of the most fundamental pieces of the Servo project--and as a result the `'return` lifetime is the solution I favor right now.

Patrick

_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to