On Fri, Mar 27, 2009 at 08:23:45AM -0400, Michael McCandless wrote: > since Lucy will use reference counting, how will you deal with cycles?
I don't think we should do anything about them. It will be up to the user to avoid them. There *are* limits to my ambitions for the Lucy object model. :) > since the host language is involved, a cycle could easily reach out to the > host language and wrap back around into Lucy? Possible. I doubt it will be much of a problem for programmers accustomed to working within a refcounted environment. Programmers who normally work within a tracing GC environment may be more prone to create reference cycles, because they're not trained to avoid cyclical data structures and alarms might not go off in their heads when they see them. But what are our options? Our class hierarchy is sophisticated and large enough that we have to use either tracing GC or refcounting. Writing our own tracing GC, now *that* would be ambitious. ;) And though I haven't studied cycle detection, I imagine it has to be both involved and costly. Marvin Humphrey
