gpt4 book ai didi

jvm - 如何编译perl6程序生成字节码?

转载 作者:行者123 更新时间:2023-12-04 16:33:26 25 4
gpt4 key购买 nike

我试图了解 perl6 及其比 perl5 的变化。我开始知道 perl 6 是编译语言,但我不知道如何?它不生成任何中间代码(直接可执行或 jvm 字节码)?
我没有任何选择来做同样的事情。怎么做?

目前我能够直接执行我的代码。

$ perl6-j hello.p6
Hello world

我正在关注 https://github.com/rakudo/rakudo

最佳答案

您可以使用 --target=在 perl6 命令行上查看编译器每个阶段的人类可读跟踪。在 JVM 上,如果你希望有一个“编译”的字节码输出,你可以使用 --target=jar然后看看里面。但最终 Perl 6 会即时编译,除非另有要求。它将字节码表示缓存在每个“CompUnit”的库路径目录中,以便下次编译步骤更快。这可以在 .precomp 中看到目录。由于 Perl 6 如何散列和索引所有 comp 单元,precomp 缓存很难手动使用。这样同名但不同版本和作者的库可以并排坐在一起。在 MoarVM 上没有等效的 --target=jar 但在 .precomp 目录中,您可以看到可以由 moar 直接执行的原始字节码文件。如果您链接运行时设置。

关于jvm - 如何编译perl6程序生成字节码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38939541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com