in reply to Arcitectural considerations with modules
Now, something else you need to be aware of - if you have a base class, every "sub" in that base class can be treated as a method, regardless of whether it thinks of itself as a method or not. For example:
That will call func1() living in the Foo package with the first argument being $bar. Try it out if you don't believe me.package Functions; use base 'Exporter'; our @EXPORT_OK = qw( func1 ); sub func1 { ... } package Foo; use Functions qw( func1 ); sub new { bless {}, shift } # This is a method sub meth1 { my $self = shift; ... } package Bar; use base 'Foo'; package main; my $bar = Bar->new; $bar->func1();
|
|---|