
nota XLVII. 4 + -5
Интересно удостовериться как обрабатываются несколько минусов-плюсов подряд.| | #!/usr/bin/perl6
my $num=4 + -5;
$num.say; | | -1 |
Sic... А если так:| | #!/usr/bin/perl6
# my $num=4 + --5; # приводит к ошибке. компиллятор считает
# что надо сделать декремент пятерке, а она read only
my $num=4 + -(-5);
$num.say; | | 9 |
Хм. А без пробелов?| | #!/usr/bin/perl6
my $num=4+-5;
$num.say;
$num=4+-(-5);
$num.say; | | -1
9 |
Без неожиданностей. А если немного позапутывать код?| | #!/usr/bin/perl6
my ($a,$b)=40,55;
# my $c=$a+++++$b; # error, "Cannot modify readonly value"
my $c=$a++ + ++$b;
"$a $b $c".say; | | 41 56 96 |
96 это 40 + 56, это понятно. Жаль, что нельзя поставить пять плюсов. Было бы красиво... Ну и напоследок проверим:| | #!/usr/bin/perl6
my $a=100;
my $b=$a+++-5;
"$a $b".say; | | 101 95 |
N.B. Не надо жадничать пробелы. # mutatio postrema: 22 Jan 2011
|