假设我想使用仅是子集 of Perl6的简单语言作为扩展/嵌入语言来“编写”我自己的Perl 6程序。例如,让这种语言只有:
使用Perl6语法,并且可能是非常有限的内置函数子集。
在此之外的任何内容都应导致编译错误,不应执行。
是否有可能为此使用Rakudo编译器,或者只能通过手工编写的解释器/编译器来完成?
让我澄清一下我的动机。
但是,为什么要使用主机语言进行配置/脚本呢?对于conf文件,我不喜欢使用像YAML或JSON这样的“外文”,因为:
对于扩展/脚本:同样,我没有看到在Perl 6应用程序中使用Lua或Python的任何理由,但是,如果我已经有了Perl 6/Rakudo,我也不喜欢发明自己的扩展/脚本语言和用Perl 6编写解释器/编译器的想法。
发布于 2018-04-11 14:40:34
我知道这不是您想要的答案,但我真的认为大多数配置都可以通过JSON很好地处理。JSON在JavaScript社区之外被很好地接受。很多语言都使用它。事实上,JSON::Fast与Rakudo-Star (如 submodule所证明)一起出现。您可以使用这个一行将JSON文件转换为Perl 6数据结构(好的,包括use JSON::Fast):
use JSON::Fast;
my %json = from-json(slurp($filename));而且,JSON是一个相当不错的数据结构。如果您需要简单的话,它可以很简单,但是您可以使用嵌套的散列和数组来进行非常复杂的配置。
https://stackoverflow.com/questions/34634488
复制相似问题