develooper Front page | perl.perl5.porters | Postings from October 2012

Timely destruction guarantees?

Thread Next
Leon Timmermans
October 15, 2012 07:50
Timely destruction guarantees?
Message ID:
On Tue, Sep 25, 2012 at 7:16 AM, Father Chrysostomos via RT
<> wrote:
> Perl has never made any guarantees about exactly when things are freed
> (I’ve read that in the docs, but I can’t find it right now), so I am
> closing this as not-a-bug.

There are increasingly many things that do depend on the current
behavior, even if we claim we make no guarantees. Almost any
non-trivial program relies on auto-closing of filehandles, and whole
frameworks (such as AnyEvent) have been built around the paradigm of
Resource Acquisition Is Initialization. I'm not sure what to think of
this. On one hand, it is their fault for ignoring the documentation.
On the other hand, we'd break an awful lot of code if we'd change
this. There's even a core module that depends on it (SelectSaver).

This may become a very serious question in the near future. Not just
if we'd switch to a GC like some people have been calling for (I doubt
that's going to happen), but especially for any de novo Perl 5
implementations, which are generally based on GC based VMs. The
chances of that happening in the near future seem bigger than ever.

How do we deal with this?


Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About