From: "Edward Diener" <eldiener / earthlink.net>
>
[...]
> While GC is nice, every language which has it needs a mechanism which 
> forces the immediate destruction of a particular type of object when 
> that object goes out of scope. Why ? Because without this feature, it is 
> impossible to design objects which have resources which must be 
> immediately released when the object is destroyed ( RAAI ). I can never 
> understand why designers of languages which use GC ( Java is in that 
> same boat ) never can understand this simple concept, and cripple their 
> language accordingly.

Personally I'd agree that non-deterministic finalization is kind of a
bummer, as is worrying about whether one has made a circular reference
somewhere. :-)  On Usenet, we'll see some endless discussions of the
trade-offs:
http://groups.google.com/groups?q=garbage+collection+reference+counting+circular&num=100&hl=en


Regards,

Bill