哪些函数式编程语言具有易于获得的生物信息学库?
(不包括Ruby等多范式语言)
更新:也欢迎列出目前无法轻松访问生物信息学库的主要函数式编程语言。
你认为 R 是一种功能性语言而不是多范式语言吗?
如果是这样,R 拥有最大的生物信息学库集。CRAN 中有很多模块,但BioConductor正是您要找的。它作为一个活跃的社区,大多数图书馆都在同行评审期刊上发表。
注意:我认为除了 perl、python 以及在 C/C++ 和 Java 方面的一些小努力之外,没有其他编程语言具有良好的生物信息学库。
我已经开始了第一个严肃的BioScala项目,其中包括 ./doc 中的教程和设计理念。此外,我正在 blog.thebird.nl 上解释使用 Scala 进行生物信息学。BioScala 正在进行中。由于您可以使用来自 Scala 的 BioJava 和 BioRuby - 很快还会使用 BioLib - 您可以开始运行。
相反,用 Haskell 编写程序非常方便,通常自己提供任何缺少的功能比尝试理解别人晦涩难懂的命令式代码更容易。
尽管 Eric 对我的维护技能提出了质疑(嘿,补丁已接受,你知道),但我认为 Haskell 是一个很好的生物信息学平台,让用户编写简洁和高性能的代码。为我工作!
Open Bioinformatics Foundation支持维护得最好的、通用的、特定于语言的生物信息学库:BioPerl、Biopython、BioJava、BioRuby 和 BioLib (C++)。这些库非常方便,即使您更喜欢另一种语言,也可以用其中一种语言编写脚本通常更容易。
正如 Andrew 所指出的,您可以将 BioJava 与基于 JVM 的函数式语言(如 Scala 或 Clojure)一起使用。
BioLib比其他的更新,但它可以与 SWIG 很好地配合使用,因此任何其他语言都可以链接它。Haskell 有一个很好的 FFI,所以你可以尝试将它与 Biolib NCBI 工具包库一起使用——它们可能比 BioHaskell 维护得更好。
与 一起BioRuby
,您拥有biogem
的包不在 的核心中bioruby
,因此您拥有更多的包。