PERL TUTORIALS - Perl Packages & Modules
Perl Packages & Modules
ADVERTISEMENTS
What are Packages?
#!/usr/bin/perl # This is main package $i = 1; print "Package name : " , __PACKAGE__ , " $i\n"; package Foo; # This is Foo package $i = 10; print "Package name : " , __PACKAGE__ , " $i\n"; package main; # This is again main package $i = 100; print "Package name : " , __PACKAGE__ , " $i\n"; print "Package name : " , __PACKAGE__ , " $Foo::i\n"; 1;ADVERTISEMENTSBEGIN and END Blocks
BEGIN { ... } END { ... } BEGIN { ... } END { ... }ADVERTISEMENTS
#!/usr/bin/perl package Foo; print "Begin and Block Demo\n"; BEGIN { print "This is BEGIN Block\n" } END { print "This is END Block\n" } 1;What are Perl Modules?
#!/usr/bin/perl package Foo; sub bar { print "Hello $_[0]\n" } sub blat { print "World $_[0]\n" } 1;The Require Function
#!/usr/bin/perl require Foo; Foo::bar( "a" ); Foo::blat( "b" );The Use Function
#!/usr/bin/perl use Foo; bar( "a" ); blat( "b" );
require Exporter; @ISA = qw(Exporter);
package Module; require Exporter; @ISA = qw(Exporter); @EXPORT = qw(bar blat); sub bar { print "Hello $_[0]\n" } sub blat { print "World $_[0]\n" } sub splat { print "Not $_[0]\n" } # Not exported! 1;Create the Perl Module Tree
$h2xs -AX -n ModuleName
$h2xs -AX -n PersonInstalling Perl Module
tar xvfz Person.tar.gz cd Person perl Makefile.PL make make install