Science  People  Locations  Timeline
Index: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Home > Perl module


A Perl module is a discrete component of software for the Perl programming language. A module is distinguished by a unique namespace, e.g. "CGI" or "Net::FTP" or "XML::Parser". By conventions, there is typically one module per file with a .pm extension. A collection of one or more modules, with accompanying documentation and build scripts, compose a package. The Perl community has a sizable library of packages available for search and download via CPAN.

It is common for Perl modules to have embedded documentation. Many modules favor an object-oriented style, but many are procedural instead, especially old modules.

Below is an example of a very simple object-oriented Perl module and a short program which makes use of the module. It is implemented in a dialect of Perl5 which is compatible with Perl 5.6.0 and higher.

helloworld.pl


#!/usr/bin/perl -w use Hello::World; my $hello = Hello::World->new(); $hello->print();

Hello/World.pm


package Hello::World; use strict; use warnings; our $VERSION = "1.0"; =head1 NAME Hello::World - An encapsulation of a commonly output message =head1 DESCRIPTION This is an object-oriented library which can print the famous "H.W." message. =head1 SYNOPSIS Use like this: use Hello:World; my $hw = new Hello:World(); $hw->print(); =head1 METHODS =over =item new Instantiates an object which holds a greeting message. =cut sub new { my $pkg = shift; my $self = bless({ message => "Hello, world!", }, $pkg); return $self; } =item toString Returns the greeting as a string =cut sub toString { my $self = shift; return $self->{message}; } =item print Outputs the greeting to STDOUT =cut sub print { my $self = shift; print $self->toString(),"\n"; } =back =head1 AUTHOR Joe Hacker =cut 1;


Read more »

Non User