On 06/05/2011 17:51, Stefan Behnel wrote:
Mark Shannon, 06.05.2011 18:33:
s...@pobox.com wrote:
Antoine> Since we're sharing links, here's Matt Mackall's take:
Antoine>
http://www.selenic.com/pipermail/mercurial-devel/2011-May/031055.html
From that note:
1: You can't have meaningful destructors, because when destruction
happens is undefined. And going-out-of-scope destructors are extremely
useful. Python is already a rather broken in this regard, so feel free
to ignore this point.
Given the presence of cyclic data I don't see how reference counting or
garbage collection win. Ignoring the fact that in a pure reference
counted
system you won't even consider cycles for reclmation, would both RC
and GC
have to punt because they can't tell which object's destructor to call
first?
It doesn't matter which is called first.
May I quote you on that one the next time my software crashes?
Arbitrarily breaking cycles *could* cause a problem if a destructor
attempts to access an already collected object. Not breaking cycles
*definitely* leaks memory and definitely doesn't call finalizers.
Michael
It may not make a difference for the runtime, but the difference for
user software may be "dead" or "alive".
Stefan
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/fuzzyman%40voidspace.org.uk
--
http://www.voidspace.org.uk/
May you do good and not evil
May you find forgiveness for yourself and forgive others
May you share freely, never taking more than you give.
-- the sqlite blessing http://www.sqlite.org/different.html
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com