Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re: Re: sub and anonymous sub

by BrowserUk (Pope)
on Jun 20, 2002 at 22:50 UTC ( #176186=note: print w/replies, xml ) Need Help??

in reply to Re: sub and anonymous sub
in thread sub and anonymous sub

Re: 1) Would it be fair to say that $depth has its ref count increased when the ++$depth is compiled As opposed to when the sub recurse is actually invoked?

And does this mean that the symbol table entry for $depth will persist for the life of the program (allbeit inaccessible), and never be garbage collected, even if the sub recurse is never invoked?

Re: 2) It was reading and trying to digest perlsub that raised the question in my mind. I scanned perlcall - its interesting. Hopefully a few more reads and a few more weeks of immersion in Perl, and it will make more sense. I had looked in perlguts, just long enough to know that I am not ready for that yet.


Replies are listed 'Best First'.
Re: Re: Re: sub and anonymous sub
by Courage (Parson) on Jun 21, 2002 at 06:12 UTC
    I'll answer only to 1st item, because I see 2nd already resolved.

    As best of my understanding, yes, ref count for $depth is increased when "sub recurse" is compiled. And if, say, we compiled anonymous sub as my $r=sub{$depth} and then $r goes away due to refcounting, I see that ref count for $depth will be decreased once (even if $depth was used several times inside that sub).

    Let me note that I just checked "perlsub" and see exactly your question explained at the section "Persistent Private Variables"

    Best wishes,
    Courage, the Cowardly Dog.
    PS. Something fishy is going on there, or my name is Vadim Konovalov. And it's not.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://176186]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (3)
As of 2018-04-25 05:13 GMT
Find Nodes?
    Voting Booth?