В документе Perl есть раздел о .postfix/.postcircumfix, в нем говорится, что
В большинстве случаев точка может быть помещена перед postfix или postcircumfix:
my @a;
@a[1, 2, 3];
@a.[1, 2, 3]; # Same
Технически, не настоящий оператор; это синтаксис, специальный в компиляторе.
Я попробовал себя:
> my @a = 1,2,3,4,5
> @a[1] # 2
> @a.[1] # 2
> my %a = Perl => 6, Python => 3, PHP => 7
> %a<Perl> #6
> %a.<Perl> #6
> my @weekdays = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];
> @weekdays.antipairs.hash{'Sunday'} # 6, I expected it to be syntax wrong, but it did work!
> @weekdays.antipairs.hash.{'Sunday'} # 6, seems visual clarity or brevity
Итак, что означает точка до postfix или postcircumfix в Perl 6? Как она это сделала? Мне это интересно. Благодарю.