On Mon, 12 Feb 2001 13:33:52 -0500 (EST), Sam Tregar <[EMAIL PROTECTED]>
wrote:

>> It's reasonably obvious (which is to say "cheap") which variables aren't
>> involved with anything finalizable.
>
>Probably a simple bit check and branch.  Is that cheap?  I guess it must
>be.

Yes, but incrementing the reference count is a single inc instruction too,
and todays CPUs are optimized to do those fast too.  I doubt a memory
fetch, bit test and jump instruction is much fast than an memory
increment.

>> Nowhere near double the penalty. We only need to deal with refcounts when
>> references are actually taken, assigned, or destroyed. That's a rare
>> occurrence, relatively speaking.
>
>Perhaps.  It's not rare in OO Perl which is coincidentally one area in
>serious need of a speedup.  I suppose I'm warped by my own experience -
>all the code I see every day is filled with references and objects.
>That's probably not the average case Perl usage.

I don't think so.  Most Perl code nowadays makes heavy use of modules and
man modules are written in OO fashion.  But reference counting is *not*
what makes Perl method calls so slow.

-Jan

Reply via email to