Thanks Graydon. Restructuring your code to avoid cycles is problematic when you're implementing a platform where the spec allows users to create ownership cycles --- like, say, the Web platform. So if Rust didn't support cyclic ownership, Servo would have to implement its own GC and tracing code just like Gecko does. That's a situation we need to get away from.
An interesting meta-point is that when you're implementing a platform, rather than a specific application, you have much less freedom to structure the implementation because you don't know what any given instance of your system actually does. This affects everything from the requirements on the programming language to the design of graphics APIs. Rob -- q“qIqfq qyqoquq qlqoqvqeq qtqhqoqsqeq qwqhqoq qlqoqvqeq qyqoquq,q qwqhqaqtq qcqrqeqdqiqtq qiqsq qtqhqaqtq qtqoq qyqoquq?q qEqvqeqnq qsqiqnqnqeqrqsq qlqoqvqeq qtqhqoqsqeq qwqhqoq qlqoqvqeq qtqhqeqmq.q qAqnqdq qiqfq qyqoquq qdqoq qgqoqoqdq qtqoq qtqhqoqsqeq qwqhqoq qaqrqeq qgqoqoqdq qtqoq qyqoquq,q qwqhqaqtq qcqrqeqdqiqtq qiqsq qtqhqaqtq qtqoq qyqoquq?q qEqvqeqnq qsqiqnqnqeqrqsq qdqoq qtqhqaqtq.q"
_______________________________________________ Rust-dev mailing list [email protected] https://mail.mozilla.org/listinfo/rust-dev
