под win 7 опять пришлось powershsell запускать
 
PS C:\Rakudo\bin> .\perl6.exe -e 'say [+] 1,2,3'
6
 
классно
 
правда с русским проблема:
C:\Rakudo\script>..\bin\perl6.exe -v
This is Rakudo Perl 6, version 2010.07-47-g9fd5eaa built on parrot 2.6.0
Copyright 2008-2010, The Perl Foundation
 
===SORRY!===
Malformed UTF-8 string
#use utf8;
#binmode STDOUT, ":utf8";
не помогают
 
зы ну и поигрался с perl 6 http://perl6.su/nota_XLIX.html
классная штука..
 
 
my $abc='nota XXV. ';
if ($abc ~~ m/(\d+)/) {
$0.say;
}
else {"Hic numeri non sunt".say}
 
pi.say;
 
1000.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.exp.log10.sin.cos.say;
 
"Unus plus duo {
1+2;
if 3 {'tres'}
} est.".say;
 
 
my ($m,$n)=(1000,2000);
say [+] $m .. $n;
 
($m,$n)=(100,200);
say [*] $m .. $n;
 
my @list=<abc def ghi>;
@list>>.&double>>.say;
sub double($in) { 
return "$in $in ";
}
 
 
'-----'.say;
my @a=1,2,3;
my @b=1,2,3;
say @a === @b;
say @a === @a;
say @a === (1,2,3);
my $c;
$c=\@a;
say $c === \@a;
 
 
my $res=routine(sub ($a,$b) {$a+$b});
say "$res (guess what was the action)";
$res=routine(sub ($a,$b) {$a-$b});
say "$res (guess what was the action)";
sub routine(&do) {
 
# this big угадай
# and complex algoritom
# in one place which
# Two variables
 
my $rand1=1000.rand.floor;
my $rand2=1000.rand.floor;
print "$rand1 ? $rand2 = ";
do($rand1,$rand2);
# can be handled
# different ways
}
 
 
 
 
 
07.06.2011, 22:44, "Andrew Shitov" <[email protected]>;:
$ perl6 -e'say [+] 1, 2, 3'
6
 
:-)
 

2011/6/7 Aleksander Gorohovski <[email protected]>
On Tue, 07 Jun 2011 21:36:40 +0300, Alexander Onokhov wrote:

$ perl -MList::Util=sum -le 'print sum 1, 2, 3'
6
Спасибо, конечно,
но а без модулей и подпрограмм обойтись можно
 

?


2011/6/7 Aleksander Gorohovski <[email protected]>

Уважаемое сообщество,
Доброго времени суток!

Подскажите можно ли более изящно, без промежуточной переменной $sum,
как это обычно делаю:

my $sum;
$sum += $_ for @m;

подсчитать сумму элементов массива @m
?

Спасибо.
--
Moscow.pm mailing list
[email protected] | http://moscow.pm.org



--
Moscow.pm mailing list
[email protected] | http://moscow.pm.org



--
Andrew Shitov
______________________________________________________________________
[email protected] | http://shitov.ru
--
Moscow.pm mailing list
[email protected] | http://moscow.pm.org
 
 
--
Николай Мишин
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить