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