Hacker News 中文摘要

RSS订阅

是什么杀死了Perl? -- What Killed Perl?

文章摘要

文章认为Perl语言并未消亡,其使用量仍与互联网泡沫时期相当。虽然新用户比例自2011年起持续下降,但作者不认为Raku(原Perl 6)是主因。Perl在互联网基础设施中仍占据重要地位,CPAN数据也显示其活跃度稳定甚至略有上升。

文章总结

标题:Perl为何衰落?

核心观点:Perl语言并未消亡,但其新用户比例自2011年起持续下降。通过分析CPAN(Perl综合典藏网)2023年度报告可见,Perl的使用热度仍维持在互联网泡沫时期的水平,甚至2022年后还略有回升。

衰落原因分析: 1. 用户代际差异: - 1990年代程序员熟悉Unix工具链(shell/C/awk等),Perl是其自然延伸 - 2000年后新生代开发者更倾向选择Python等作为第二语言,最终使其成为主流首选语言

  1. 技术环境变迁:
  • 早期开发者受限于工具获取难度,即使存在更适合的语言也会选择Perl
  • 现代包管理器的普及(如Rust/Go等新兴语言的兴起恰逢互联网基础设施成熟期)大幅降低了尝试新语言的门槛

作者结论: 当代开发者既缺乏理解Perl的思维基础,又面临更丰富的语言选择。这种"先天不足+后天分流"的双重效应,或是Perl失去吸引力的根本原因。

(注:原文中关于Raku影响的讨论、具体数据年份等细节已精简,保留核心论证逻辑。图片说明和部分次要论据因与主题关联较弱未予呈现。)

评论总结

以下是评论内容的总结,平衡呈现不同观点并保留关键引用:

1. Perl被更简单易学的语言取代

  • Python、Ruby等语言更易学习,语法更直观
    • "Python just seemed more straightforward...one way to do something" (7thaccount)
    • "Modern minds can't comprehend Perl" (bhaak)

2. Perl 6/Raku的分裂影响

  • Perl 6开发分散了社区资源,导致Perl 5停滞
    • "Perl 6/Raku pulled away folks...improving Perl 5" (autarch)
    • "Perl 6 insanity...killed Perl" (orev)

3. Web开发被PHP等取代

  • PHP更易部署,成为Web开发主流
    • "mod_php killed Perl...easiest way to do web stuff" (giantrobot)
    • "Perl CGI did not scale...superseded by PHP" (ojosilva)

4. 社区和生态问题

  • CPAN模块维护问题,新工具缺乏Perl支持
    • "CPAN needs tidying up...not a target for new stuff" (ojosilva)
    • "Perl package...changed API with no compatibility" (the_biot)

5. 仍有一些忠实用户

  • 文本处理等场景下Perl仍有优势
    • "I still use Perl everyday...process text logs" (lizknope)
    • "Perl is powerful...for string parsing" (rwky)

6. 语言设计争议

  • 语法晦涩,TIMTOWTDI原则导致混乱
    • "Perl has confusing bits...variable prefixes" (mono442)
    • "Perl is an explosion in an ASCII factory" (HeinzStuckeIt)

7. 历史地位与现状

  • 曾是1990年代互联网关键工具,现回归小众
    • "Perl was the internet in 1990s" (ojosilva)
    • "Popularity was exaggerated...regression to the mean" (leejo)

关键趋势:Perl因语言复杂性、社区分裂、竞争语言崛起而衰落,但在特定领域仍有价值。PHP和Python是主要替代者,Perl 6的失败加速了这一进程。