gpt4 book ai didi

perl - 为什么 Perl 在生物学研究中被如此广泛地使用?

转载 作者:行者123 更新时间:2023-12-03 09:13:16 25 4
gpt4 key购买 nike

关闭。这个问题是opinion-based .它目前不接受答案。












想改进这个问题?更新问题,以便 editing this post 提供事实和引用来回答它.

6年前关闭。




Improve this question




作为一名学生,我在一家生物研究所担任支持人员,Perl 似乎无处不在。不是针对每个项目,但似乎这里超过一半的人在办公室/办公 table 上/上都有几本 Perl 书籍。

为什么 Perl 在生物学中被如此广泛地使用?

最佳答案

Lincoln Stein 在他的文章中强调了 Perl 在生物信息学方面的一些可取之处:
How Perl Saved the Human Genome Project .

从他的分析来看:

我认为有几个因素是负责任的:

  • Perl 非常适合对文本进行切片、切 block 、扭曲、绞拧、平滑、总结和其他方式的修改。尽管现在生物科学确实涉及大量的数字分析,但大多数原始数据仍然是文本:克隆名称、注释、评论、引用书目。甚至 DNA 序列也是类似文本的。相互转换不兼容的数据格式是文本修改和一些创造性猜测相结合的问题。 Perl 强大的正则表达式匹配和字符串操作运算符以任何其他现代语言无法比拟的方式简化了这项工作。
  • Perl 是宽容的。生物数据通常不完整,字段可能缺失,或者预期会出现一次的字段出现多次(例如,因为重复运行了一个实验),或者数据是手动输入的并且不完全符合预期的格式。 Perl 并不特别介意值是否为空或包含奇数字符。可以编写正则表达式来拾取和纠正数据输入中的各种常见错误。当然,这种灵 active 也可能是一种诅咒。我将在下面详细讨论 Perl 的问题。
  • Perl 是面向组件的。 Perl 鼓励人们在小模块中编写他们的软件,或者使用 Perl 库模块,或者使用经典的 Unix 面向工具的方法。使用管道、系统调用或套接字可以轻松地将外部程序合并到 Perl 脚本中。 Perl5 引入的动态加载器允许人们使用 C 例程扩展 Perl 语言,或者使整个编译库可用于 Perl 解释器。目前正在努力将世界上收集到的所有关于生物数据的智慧收集到一组称为“bioPerl”的模块中(在稍后将在 Perl 期刊上发表的一篇文章中进行了详细讨论)。
  • Perl 易于编写,开发速度快。解释器不需要您提前声明所有函数原型(prototype)和数据类型,新变量会根据需要出现,对未定义函数的调用只会在函数被调用时导致错误需要。调试器与 Emacs 配合得很好,并允许舒适的交互式开发风格。
  • Perl 是一种很好的原型(prototype)语言。因为 Perl 又快又脏,所以在将新算法迁移到快速编译语言之前,在 Perl 中制作新算法的原型(prototype)通常是有意义的。
    有时事实证明 Perl 足够快,以至于算法不必移植;更常见的是,可以用 C 编写算法的一个小核心,将其编译为动态加载的模块或外部可执行文件,然后将应用程序的其余部分留在 Perl 中(有关以这种方式实现的复杂基因组映射应用程序的示例,请参阅http://waldo.wi.mit.edu/ftp/distribution/software/rhmapper/)。
  • Perl 是一种很好的 Web CGI 脚本语言,随着越来越多的实验室转向 Web 来发布他们的数据,Perl 的重要性也在增加。
  • 关于perl - 为什么 Perl 在生物学研究中被如此广泛地使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2527170/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com