Le module Perl6::Slurp propose de charger un fichier dans son
ensemble en une seule commande. Bien sur, cela fonctionne également
pour l'entrée standard comme l'illustre l'exemple suivant :
use Perl6::Slurp;
my $content;
if(defined($ARGV[0])) {
$content = slurp($ARGV[0]);
}
else {
$content = slurp \*STDIN;
}
print $content;
Ainsi présenté, slurp() apparaît bien simple d'utilisation, il n'en pas moins complêt et propose des fonctionnalités surprenantes. Par exemple, il sait lire les fichier encodés en UTF8 :
$content = slurp '<:utf8', $file;
Il peut également retourner une tableau ou chaque élément est une ligne du fichier :
@content = slurp($ARGV[0]);
Ou chaque ligne du fichier est une entrée dans le tableau retourné.