问题标签 [raku]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
598 浏览

raku - 在 Perl 6 中的方法和函数调用中使用冒号

我想知道冒号与 Perl 6 中的方法和函数调用有什么关系。为了记录,我使用的是基于 MoarVM 版本 2015.05 构建的 perl6 版本 2015.05-55-gd84bbbc。

我刚刚在Perl6 规范测试(S32-io)中看到了以下内容(我添加了评论):

据我所知,这相当于:

这两个似乎都需要多个参数并且可以很好地展平列表:

有这两种不同的语法一定是有原因的。有任何理由使用一种或另一种语法吗?

我还注意到,当用作方法时,我们必须使用:或与 print 一起使用:()

在函数中使用冒号时还有一些有趣的行为print。在这种情况下,:()不等价:

然后我尝试在脚本文件中使用 print 。这适用于打印到标准输出:

但是,这不会打印到标准输出:

但方法版本工作正常:

我觉得我几乎明白这一点,但我无法用语言表达。有人可以解释这些使用打印的品种吗?另外,这些行为是否会因为 Great List Refactor 而改变?

0 投票
1 回答
145 浏览

raku - 如何在 Perl 6 中创建符号链接?

如何使用 Perl 6 创建符号链接?

当然,正如另一个问题中提到的,我可以使用shell或使用实际的 shell 命令run

但是,我更希望能够使用函数更直接地创建它们。

0 投票
1 回答
238 浏览

perl - Perl 6 和打印列

Perl 6 是否有与Unicode::GCStringcolumns方法等效的东西?

Perl 5 示例:

0 投票
1 回答
389 浏览

raku - 混合打字如何工作?

Wikipedia 说“Perl 6 提供了一个混合类型系统,程序员可以选择使用静态类型、使用动态类型或将两者混合使用。” 混合打字如何工作?在 Perl 中使用静态类型是否仅仅意味着我声明了一个类型,并且必须显式地将字符串转换为数字,反之亦然,以换取安全性和运行时速度?我注意到有关此功能的信息似乎很少。

0 投票
1 回答
231 浏览

raku - 在 Perl 6 中关闭变量声明

有没有办法让 Perl 6 不需要my声明变量?我试过这个:

但这没有用

编辑:这是 Rakudo 中的一个错误。请参阅 Perl 6 规范:http ://design.perl6.org/S01.html 官方的 Rakudo 包似乎很快就过时了。建议从源码编译:http ://rakudo.org/how-to-get-rakudo/

0 投票
2 回答
527 浏览

raku - 如何在 Perl6 中编写自定义访问器方法?

如何在 Perl6 中编写自定义访问器方法?

如果我有这门课:

我可以做这个:

假设我想在我的 Perl6 类中的 setter 中添加一个小检查而不放弃$gandalf.mana = 150;符号(换句话说,我不想写这个:)$gandalf.setMana(150);。如果程序试图设置负法力,它应该死掉。我该怎么做呢?Perl6 文档只提到可以编写自定义访问器,但没有说明如何编写。

0 投票
2 回答
722 浏览

sorting - 对哈希 kv 对进行排序

%hash.sort({.key})>>.kv相当于上面的排序吗?

>>为什么这种排序在没有超提示的情况下不起作用?

0 投票
1 回答
392 浏览

go - Perl6 中是否有与 Go 协程等价的程序?

我知道

在我的系统上创建了大约十几个moar线程并将它们用作 Promise 池,但我想像在 Go 中一样一次启动它们。那可能吗?

0 投票
1 回答
283 浏览

perl - Perl6:原始模式下的 getc

我正在使用 Perl 6 模块Term::termios

当我运行此脚本并按下键up-arrow, down-arrow,right-arrow时,left-arrowq是输出:

但我本来预计:

如何修改脚本以获得所需的输出?

0 投票
1 回答
108 浏览

raku - 如何在 perl6 中过滤自己的输出?

我想过滤自己的输出而不为此编写单独的程序。有可以调整的 perl5 解决方案。有没有像新语言支持的更好的东西?