One way I think is nice to learn about modules is to start with a truly toy example, that has nothing but (say) a "hello world" sub defined in it, and just build it up from there.
"Learn by doing." Of course I don't recommend this as the sole method! I think that the Perl Cookbook (the ram) and Effective Perl Programming both have excellent text-based introductions to modules and OOP in Perl.
code>
#!/usr/bin/perl
package MyModule;
sub hello {
print "Hello, world!\n";
}
1; # modules must return true value
</code>
And then just go on from there. Probably the first thing you'll want to do is to export the sub, so you don't have to get used to namespace shifting all the time. So peek at just about *any* existing module and see how they use Exporter to export variables and subs into the main package.
HTH,
arturo