加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

read-eval-print-loop – Perl6 REPL用法

发布时间:2020-12-15 22:02:54 所属栏目:大数据 来源:网络整理
导读:是否有可能让(Rakudo)Perl6在放入REPL之前执行一些代码?就像 python一样用“ python -i”. 例如,我想加载一些模块,并且可能会读取一个辅助文件,并在放入REPL之前从该端文件构建一些数据结构,并让用户在数据结构上执行他们需要做的事情,使用REPL作为用户界面
是否有可能让(Rakudo)Perl6在放入REPL之前执行一些代码?就像 python一样用“ python -i”.

例如,我想加载一些模块,并且可能会读取一个辅助文件,并在放入REPL之前从该端文件构建一些数据结构,并让用户在数据结构上执行他们需要做的事情,使用REPL作为用户界面.

虽然这个问题的答案可能满足这一要求,但这与Start REPL with definitions loaded from file相似但不同.基本情况是,在执行任何程序结束时,解释器不会退出,而是将用户留在REPL.除了为交互式程序提供漂亮的,内置的,基于Perl6的用户界面外,它还提供了一个很好的工具,可以从中调试以错误方式退出的代码.

编辑:

选择Zoffix的解决方案作为正确(迄今为止)的解决方案,因为它是唯一满足所述要求的所有要求的解决方案.这里希望这个功能被添加到编译器或语言规范中.

解决方法

您可以使用-M开关加载模块.
$perl6 -MJSON::Tiny

To exit type 'exit' or '^D'
> to-json Array.new: 1,2,3.Str
[ 1,"3" ]
>

如果要运行其他代码,目前必须先将其放入模块中.

$mkdir lib
$echo 'our $bar = 42' > lib/foo.pm6
$perl6 -Ilib -Mfoo

To exit type 'exit' or '^D'
> $bar
42
>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读