ral*_*ldi 23 python perl comparison perl6 raku
来自Perl 5背景,迁移到Perl 6或Python有什么好处?
编辑:如果你认为这只是因为你认为它只是火焰棒,请阅读下面的答案.他们不是在争论; 他们写得很好,讨论了每种语言的优缺点.为Stack Overflow社区提供一些功劳.
Bry*_*ley 24
从Perl切换到Python没有任何好处.从Python切换到Perl也没有任何好处.他们都有同样的能力.根据你所知道的和你想要解决的问题来选择你的工具,而不是某种观念,即某种方式本质上比另一方更好.
唯一真正的优势是,如果您从不熟悉的语言切换到您知道的语言,在这种情况下,您的工作效率可能会提高.
mas*_*onk 16
Perl 6比python有一些很棒的功能.我认为这些都是Python 3没有的功能:
它与Python共享以下优于Perl 5的优势:
Perl6的实现不是100%完成,或者已经足够调整以用于"性能敏感"应用程序的某些值.但是,在95-99%的用例中,80-90%的规范在Rakudo中已经完成,现在*
*一个明显的遗漏是异步I/O的任何规定.该规范的那部分是不断变化的.
**虽然流行的Moose项目在Perl 5中提供了这个功能.
Kir*_*ser 12
在我看来,Python的语法更清晰,更简单,更一致.您可以在任何地方定义嵌套数据结构,无论您是计划将它们传递给函数(还是从一个函数返回)或直接使用它们.我非常喜欢Perl,但只要我学会了足够的Python来"获取"它,我就再也没有回头了.
根据我的经验,Python的随机片段往往比Perl的随机片段更具可读性.差异实际上归结为每种语言的文化,Perl用户通常喜欢聪明,而Python用户更喜欢清晰.这并不是说你不能有明确的Perl或狡猾的Python,但那些不太常见.
两者都是优秀的语言,解决了许多相同的问题.我个人倾向于Python,如果没有其他原因,它似乎正在获得动力,而Perl似乎正在失去用户的Python和Ruby.
注意上面的丰富的黄鼠狼词.老实说,它真的会归结为个人偏好.
Python 的一个主要优势是现在可以以生产就绪格式使用。
如果您需要与 Java 或 .net clr 密切合作,Python 有 Jython 和 IronPython。
Perl 6 的优点是基于与 Perl (1-5) 相同的原则;如果您喜欢 Perl,出于同样的原因,您也会喜欢 Perl 6。(有不止一种方法可以做到,等等)
Perl 6 也有一个仅部分实现的优势:如果您想深入了解语言内部或帮助定义标准库,这是开始使用 Perl 6 的好时机。
编辑:(2011)现在仍然是破解 Perl6 内部结构的好时机,但现在有一个更成熟、更可用的 Perl6 发行版,Rakudo Star。如果您今天想使用 Perl6,这是一个不错的选择。