develooper Front page | perl.perl6.language | Postings from February 2001

Re: Garbage collection (was Re: JWZ on s/Java/Perl/)

Thread Previous | Thread Next
Dan Sugalski
February 12, 2001 12:37
Re: Garbage collection (was Re: JWZ on s/Java/Perl/)
Message ID:
At 10:46 AM 2/12/2001 -0800, Jan Dubois wrote:
>On Mon, 12 Feb 2001 13:29:21 -0500, Dan Sugalski <> wrote:
> >At 10:38 AM 2/12/2001 -0500, Sam Tregar wrote:
> >>On Mon, 12 Feb 2001, Dan Sugalski wrote:
> >>
> >> > Perl needs some level of tracking for objects with finalization 
> attached to
> >> > them. Full refcounting isn't required, however.
> >>
> >>I think I've heard you state that before.  Can you be more specific?  What
> >>alternate system do you have in mind?  Is this just wishful thinking?
> >
> >This isn't just wishful thinking, no.
>You've been asked multiple times to share how this is supposed to work.
>Is there a specific reason you don't want to talk about it?

I do want to talk about it. It just hasn't been at the top of the heap of 
things that need discussing, and I don't really have time right now, 

It's also an internals issue, not a language issue. (I've set followups 
appropriately) The only thing that language really cares about is 
deterministic destruction, and it's arguable whether that's a language 
issue. (And no, I'm not going to argue it. I don't really care one way or 
the other at the moment)

>As far as I can see, there is only *one* reason to go to partial
>refcounting: it saves some memory.  But beyond that, it is slower, more
>complicated and shares all the disadvantages of refcounting.  Why don't
>you want to just keep the current scheme and avoid having to think about
>mark-and-sweep altogether if you agree that at least partial refcounting
>will still be needed?

If you haven't already gone and read up on various garbage collectors, I'd 
recommend you do. Folks more clever than I am have already dealt with 
this--refcounting in general isn't necessary, and in those cases where it 
is needed, it doesn't have to be full refcounting.

Bottom line is that most variables in perl don't need any finalization at 
all, and those that do don't necessarily need refcounting. (Though I'll 
grant that the alternatives I can think of may be more expensive than 
refcounting, but I've not put much thought into it)


--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai                         have teddy bears and even
                                      teddy bears get drunk

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