В Perl, если вы назначите массив скаляру, вы получите длину этого массива.Массив в скалярном контексте в Perl
Пример:
my @arr = (1,2,3,4);
my $x = @arr;
Теперь, если вы проверяете содержание $x
, вы увидите, что $x
содержит длину @arr
массива.
Я хочу знать причину, почему Perl делает это. В чем причина этого? Я стараюсь на своем уровне, но не могу найти никакой веской причины. Итак, может кто-нибудь помочь мне понять причину происходящей сцены?
Perl - очень «лингвистический» язык, если это имеет какой-то смысл: как и в случае с естественными языками, значение в Perl очень ** контекстуально **. См. Например, http://stackoverflow.com/a/2886844/55857 и http://perldoc.perl.org/perldata.html#Context. – FMc