In perl.git, the branch blead has been updated <http://perl5.git.perl.org/perl.git/commitdiff/89040989e74937c674a9a233107902fcf1fd4e6d?hp=4e84fddd4d83cc7691f8e6768b155e338f0a7573>
- Log ----------------------------------------------------------------- commit 89040989e74937c674a9a233107902fcf1fd4e6d Author: Aristotle Pagaltzis <[email protected]> Date: Mon Nov 7 08:51:51 2016 +0100 perlobj: do not discourage manual @ISA ----------------------------------------------------------------------- Summary of changes: pod/perlobj.pod | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pod/perlobj.pod b/pod/perlobj.pod index fe6f8ad..d5d242f 100644 --- a/pod/perlobj.pod +++ b/pod/perlobj.pod @@ -179,10 +179,12 @@ Each package contains a special array called C<@ISA>. The C<@ISA> array contains a list of that class's parent classes, if any. This array is examined when Perl does method resolution, which we will cover later. -It is possible to manually set C<@ISA>, and you may see this in older -Perl code. Much older code also uses the L<base> pragma. For new code, -we recommend that you use the L<parent> pragma to declare your parents. -This pragma will take care of setting C<@ISA>. +Calling methods from a package means it must be loaded, of course, so +you will often want to load a module and add it to C<@ISA> at the same +time. You can do so in a single step using the L<parent> pragma. +(In older code you may encounter the L<base> pragma, which is nowadays +discouraged except when you have to work with the equally discouraged +L<fields> pragma.) However the parent classes are set, the package's C<@ISA> variable will contain a list of those parents. This is simply a list of scalars, each -- Perl5 Master Repository
