Nazwa pliku powinna być taka sama jak nazwa pakietu ale dodajemy rozszerzenie pm (w naszym przypadku Template.pm). Jeżeli chcemy aby jakieś moduły były użyte w kodzie modułu, umieszczamy ich nazwy po słowie package (wcześniej wpisane dotyczyły by głównego programu czyli pakietu main).
Zwyczajowo, jeżeli chcemy odwołać się do funkcji będącej w module, musimy użyć nazwy modułu, dwukropka oraz nazwy funkcji (np. my $Cos = Template::Function(a,b)). Tą kłopotliwą składnie można uprościć dzięki eksportowaniu nazw funkcji i zmiennych (u nas use Export qw(import) i tablica wyeksportowanych elementów).
Moduł zawsze musimy kończyć wartością 1. Oznaczającą że kod został poprawnie załadowany.
#! /usr/bin/perl package Template; use strict; use warnings; use Data::Dumper; use Exporter qw(import); our @EXPORT_OK = qw(Function); sub Function { } 1
W internecie:
http://www.tutorialspoint.com/perl/perl_modules.htm