raku - 无法使用 Inline::Perl5 将 Perl5 模块导入 Perl6
问题描述
我正在尝试 使用手册页https://modules.perl6.org/dist/Inline::Perl5:cpan中的建议导入我非常喜欢https://metacpan.org/pod/Data::Printer的 Perl5 模块:九
使用一个非常简单的脚本
use Inline::Perl5;
my $p5 = Inline::Perl5.new;
$p5.use('Data::Printer');
但后来我得到这个错误:
Unsupported type NativeCall::Types::Pointer<94774650480224> in p5_to_p6
in method p5_to_p6_type at /usr/lib/perl6/site/sources/130449F27E85303EEC9A19017246A5ED249F99E4 (Inline::Perl5) line 298
in method unpack_return_values at /usr/lib/perl6/site/sources/130449F27E85303EEC9A19017246A5ED249F99E4 (Inline::Perl5) line 375
in method invoke at /usr/lib/perl6/site/sources/130449F27E85303EEC9A19017246A5ED249F99E4 (Inline::Perl5) line 446
in method import at /usr/lib/perl6/site/sources/130449F27E85303EEC9A19017246A5ED249F99E4 (Inline::Perl5) line 776
in method use at /usr/lib/perl6/site/sources/130449F27E85303EEC9A19017246A5ED249F99E4 (Inline::Perl5) line 898
in block <unit> at inline_perl5.p6 line 4
这里出了什么问题?如何将此 perl5 模块导入 perl6?如果有一种类似的方法可以在 Perl6 中获得彩色/选项卡式输出,我也会很高兴,Data::Printer
因为我找不到它。
解决方案
我认为您偶然发现Inline::Perl5
了 Perl 5 模块似乎发生的错误Data::Printer
,因此我建议您在https://github.com/niner/Inline-Perl5/issues上为它打开一个问题。
同时,语法变得更加简单。安装后,您Inline::Perl5
只需添加:from<Perl5>
副词即可从 Perl 5 加载模块:
use Data::Printer:from<Perl5>;
不幸的是,此时会产生与您已经描述的相同的错误:
===SORRY!===
Unsupported type NativeCall::Types::Pointer<140393737675456> in p5_to_p6
所以我不认为有一个解决方案不需要升级任何一个Inline::Perl5
或 Rakudo Perl 6。
推荐阅读
- angular - 检查特定 div/Angular 组件中的 elementById
- python - 无法使用python访问json文件
- python - 如何在 Python 中运行进程?
- mongodb - MongoDB查询将时间戳与嵌套对象时间戳进行比较
- http - 从 localhost 移动到托管站点时诊断“请求发起者链”中的附加重定向
- node.js - 通过 IIS 代理向 nodejs https 服务器发送带有 http post 请求的大数据时出现错误 400.6
- android - 如何启用 Compose 快餐栏的滑动关闭行为
- sql - SQL 计算 Redshift 中的总持续时间
- graphviz - 修复graphviz中簇的位置
- c - AFL-fuzz 没有发现任何崩溃