Perl 6通过在某些地方不允许空间而在其他地方做工作来清理其前身的一些奇怪案例.空间在哪里重要?有一个完整的参考资料会很高兴,因此我添加了一个社区wiki答案,我会用你的回复答案进行更新.举例赞赏!
但是,还要记住Perl 6有空格,所以你可以使用a \来使空格有效地不可见.例如,您不应该排除子例程名称和它的参数列表,但是如果没有空格,您可以:
sub-name ( @arguments ); # not okay
sub-name\ ( @arguments ); # okay
Run Code Online (Sandbox Code Playgroud)
来自为什么这个 Perl 6 feed 操作符是 \xe2\x80\x9cbogus 语句\xe2\x80\x9d?我有这个例子,其中}for the grep 由于隐含的分号而成为语句的结尾:
my @rakudo-people = <scott patrick carl moritz jonathan jerry stephen>;\n@rakudo-people\n ==> grep { /at/ } \\\n ==> map { .uc } ==> my @who-it\'s-at;\nsay ~@who-it\'s-at;\nRun Code Online (Sandbox Code Playgroud)\n\n我忘记在哪里找到这个例子了
\n\nmy @a = [[<foo>],]; # Is that a reduction?\n\nmy @a = [[ <foo>],]; # That space certainly means it\'s not one?\nRun Code Online (Sandbox Code Playgroud)\n\n$hash <key>; # Error, indexing uses postfix operators\n$hash<key>; # Works\n\ncall-this-subroutine ( @arguments ); # Error\ncall-this-subroutine( @arguments ); # Works\n\nmy $x = 5;\nsay $x ++; # Error\nsay $x++; # Works\nRun Code Online (Sandbox Code Playgroud)\n\n这对于前缀运算符来说不是问题:
\n\nmy $x = 5;\nsay ++ $x; # Works\nsay ++$x; # Works\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
360 次 |
| 最近记录: |