Il existe deux méthodes pour charger un module dans un main:
- l'utilisation de require qui charge le module à l'exécusion
- l'utilisation de use qui charge le module à la compilation
Exemple dans le main:
Require "toto.pm" ; équivalent à require Toto ;
Pour créer un module, il faut déclarer l'interface pour définir les règles
Exemple:
Package Cartes::Poker ; # Déclaration du package dans lequel le module déclarera ses variables globales et ses fonctions
use Exporter ; # Charge le module Exporter qui gère l'interface publique du module
@ISA = ('Exporter') ; # Initialisation du tableau spécial (pour un début, pas la peine de rentrer dans les détails)
@EXPORT = qw (&battre @jeu_de_cartes) ; # dit ce qui est explorter
@jeu_de_cartes = () ; # variable exportée
sub battre {} # fonction exportée
# Ici le code d'instanciation
1; # Important à mettre