有没有人有Perl5i的经验?

Wei*_*yan 7 perl perl5 perl5i

我偶尔会看到Perl5i被提及.它看起来很棒,让事情变得更容易.一些问题:

  1. 该模块是否与其他模块兼容,例如Dancer,Mojolicious,XML :: RSS等?

  2. 它与Moose兼容,还是具有更好的OO功能?

  3. 它包装了最好的CPAN模块,如果我的脚本使用这些...

    use strict;
    use utf8::all;
    use XML::RSS::JavaScript;
    use DateTime::Format::Mail;
    
    Run Code Online (Sandbox Code Playgroud)

    ......我应该用以下代替它:

    use perl5i::2;
    use XML::RSS::JavaScript;
    use DateTime::Format::Mail;
    
    Run Code Online (Sandbox Code Playgroud)

任何经验,好的和坏的,请分享.

Sch*_*ern 10

我是perl5i的主要作者.

1)perl5i与其他模块兼容.如果您发现冲突,请告知我们. http://github.com/schwern/perl5i/issues

2)是的,它与Moose和Mouse兼容.它没有重塑这些车轮的野心.它对OO的贡献是自动装箱,其中非对象可以有类似的方法$string->trim.

3)通常,您可以安全地将perl5i与现有代码一起使用.但是,它确实做了一些小的向后不兼容的更改,通常是Perl的一些无论如何都没有意义.需要注意的最重要的事情是:1)文件操作(如open)现在会在失败时抛出异常,2)utf8 :: all会更改非文本文件的读取方式.

我对perl5i的体验有偏见.我可以说perl5i最大的负面影响是1)有时会出现bug并且它的词汇效应泄漏到范围之外2)依赖链非常大,3)其中一些依赖项在Windows上存在问题.积极的一面是,自动装箱和内置异常会改变人们编写Perl的方式.

有一个FAQ,我会谈谈perl5i.