David L . Nicol <[EMAIL PROTECTED]> writes:
>
>One assumes that if you redefine (@ISA) perl5 throws away this cache?

Not all at once. It increments a "generation number".
When perl finds it is about to use a cached method it checks to see
if the value post-dates the current generation number, or does 
the re-lookup.

>
>
>If D isa C isa B and D looked up method f and found it in B's methods,
>then C redefines itself as an A, does perl5 figure out to throw away
>D->f ?

Sub definition increments the generation number too.

>
>I mean, who redefines ISA at  run time?  

A. Almost all perl code prior to invention of 'use base' in perl5.00404.
   (Had to do @ISA = ... as part of run phase.)

B. Any module loaded after another is compiled sets _its_ ISA after
   the base class has been compiled.

>
>And how did Ing-Simmons get on the reply-to-all CC list twice?

Posted from work and from home.


-- 
Nick Ing-Simmons

Reply via email to