Eksempel
* Lav slidesæt:
#!/usr/bin/perl
$/="\n%%slide"; # Brug %%slide som record separator
# Lav oversættelse af < og > til HTML
%than=("<" => "<", ">" => ">" );
while(<>) { # For hver %%slide gør:
my @HTML; # Ny HTML-side
for (split(/\n+/,$_)) { # Split record til linier
# for hver linie gør:
s/(<|>)/$than{$1}/g; # Udskift < og > med HTML
/^%%/ && next; # Spring over linier, der starter med %%
/^\s*$/ && next; # Spring over tomme linier
# Linier startende med '*' skal have <H2>
/^\*/ && do { push(@HTML,"<H2>",$_,"</H2>"); next; };
# Linier startende med ' -' skal have <UL><H3>
/^ \-/ && do { push(@HTML,"<UL><H3>",$_,"</H3></UL>"); next; };
# Linier startende med ' +' skal have <UL><UL><H4>
/^ \+/ &&
do { push(@HTML,"<UL><UL><H4>",$_,"</H4></UL></UL>"); next; };
# Linier startende med non-space (slide overskrift) skal centreres
/^\S/ && do { push(@HTML,"<H1><CENTER>",$_,"</CENTER></H1>"); next; };
# Alle andre linier (Perl-kode) PRE-formatteres
{ push(@HTML,"<PRE>",$_,"\n</PRE>"); next; };
}
$slide++; # Tæl slidenr op
open(FH,">slide.${slide}.html") || die; # Åbn en html-fil
print FH "<HTML>",@HTML,"</HTML>"; # Skriv @HTML til filen
close FH;
}