这与访问POD 的这个问题有关,但它比这更进一步。您可以使用以下命令轻松访问 Perl 6 程序的抽象语法树:
perl6 --target=ast -e '"Þor is mighty!".say'
这将打印整个 Q 抽象语法树。目前还不太清楚如何从您自己的程序中制作这个,或者我还没有找到如何做到这一点。实际上,该CoreHackers::Q
模块将其作为外部脚本运行。但是能够从您自己的程序中访问它,例如
use QAST; # It does not exist
my $this-qast = QAST::Load("some-external-file.p6") # Would want something like this
会很好。我很确定这应该是可能的,在 NQP 级别并且可能以 Rakudo 依赖的方式。有人知道它很热吗?