RFC: Proposal: Deterministic Object Destruction
Steven D'Aprano
steve+comp.lang.python at pearwood.info
Wed Feb 28 19:14:32 EST 2018
On Wed, 28 Feb 2018 15:44:45 -0800, ooomzay wrote:
>> Here's one example: reference cycles. When do they get detected?
>
> Orphan cycle _detection_ is orthogonal to this proposal.
It certainly is not. Dealing with cycles is why most of the world has
moved on from reference counters. (Or at least, from using reference
counters *alone*.)
> As cycles are always a symptom of a design error
"Always"?
So, because you personally don't like the with-statement (possibly
because it is too clear, understandable, explicit and deterministic for
your tastes?), you want to mandate that everyone else use the clumsy work-
around of weak references to avoid an artificial and pointless "design
error" of a reference cycle.
Great. I'm loving this RFC more and more. Not.
Hint: the real world is *full* of cycles. Many problems have to deal with
cycles. Having to manage those cycles by hand is *awful*, and completely
unnecessary given that garbage collectors exist that can manage them for
you.
> I personally have little interest in
> them other than some facility to detect/debug and eliminate them from
> applications by design (another topic).
And for your next tricks, you'll solve the political problems of the
Middle East without hurting anyone, and then colonise Mars on a budget of
ten thousand dollars.
--
Steve
More information about the Python-list
mailing list