f = File.new("soubor.txt")
s = f.read
nebo zkráceně
s = File.new("soubor.txt").read
než v Perlu
local $/ $s = <soubor.txt>Ale proti gustu žádný dišputát. Je to jen můj osobní názor.
LABEL while (EXPR) BLOCK LABEL while (EXPR) BLOCK continue BLOCKNerozumím co se myslí pojmem "šoupat kolem". Samozřejmě to jde v daném bloku uložit do jakékoli proměné, případně s tím dělat i jiné skopičiny. Použité
my způsobí, že proměnná $filename existuje pouze uvnitř EXPR, BLOCK a continue BLOCK.
use strict;
use warnings;
# long time wanted perl function :-)
sub map2 (&\@\@) {
my ($sub,$f,$s) = @_;
map { local (*a, *b) = (\$f->[$_], \$s->[$_]); &$sub } (0..$#$f);
}
# data
my @a1=(1,2,3);
my @a2=(4,5,6);
# output modification
$\="\n";
$"=',';
# use and output
print "map2 result: ", join $", map2 {$a + $b++} @a1, @a2;
print "a1: @a1";
print "a2: @a2";