5

dd例程是 Rakudo 特有的功能,但这是我的问题所附带的。程序内部有没有办法检查执行情况并在不正确的情况下退出?我必须自己做吗?

 die "Unsupported VM" unless $*VM ~~ m/^ 'moar' /;

也许我们需要像 Perl 5 的Devel::AssertOS这样的东西这样的东西。

我对创建特定于实现的程序完全不感兴趣,但我可以想象一个实现具有与程序不兼容的特定怪癖和错误的情况。因为,你知道,那是 Java 好几年了(还记得MRJ吗?)。

4

1 回答 1

6

如果你只想在 MoarVM 上运行你的程序,那么:

BEGIN die "Must run on MoarVM, not $*VM.name()" unless $*VM.name eq 'moar';

应该足够了。

更新:BEGIN按照乔纳森沃辛顿的建议添加

于 2017-07-21T21:38:12.593 回答