2009-10-06 18 views

Respuesta

10

¿Considera R como un lenguaje funcional y no multi-paradigma?

Si es así, R tiene el mayor conjunto de bibliotecas de bioinformática. Hay muchos módulos en CRAN, pero BioConductor es lo que está buscando. Es una comunidad activa y la mayoría de las bibliotecas se han publicado en revistas de revisión por pares.

Nota: Creo que aparte de Perl, Python y algunos pequeños esfuerzos en C/C++ y Java, ningún otro lenguaje de programación tiene buenas bibliotecas de bioinformática.

+0

R también tiene un soporte básico para la programación funcional. Ver '? Filtrar' como ejemplo. La familia de funciones 'apply' se usa con bastante frecuencia en el análisis de datos R y también parece ser directa desde el paradigma funcional. – Sharpie

+0

Se debe otorgar cierto crédito a la Caja de herramientas de Bioinformatics de MATLAB: https://uk.mathworks.com/products/bioinfo.html –

3

Las bibliotecas de bioinformática mejor mantenidas, multiuso y específicas del idioma están respaldadas por el Open Bioinformatics Foundation: BioPerl, Biopython, BioJava, BioRuby y BioLib (C++). Estas bibliotecas son tan prácticas que a menudo es más fácil escribir una secuencia de comandos en uno de esos idiomas, incluso si prefieres un idioma diferente.

Como señaló Andrew, puede usar BioJava con un lenguaje funcional basado en JVM como Scala o Clojure.

BioLib es más nuevo que los otros, pero está destinado a funcionar bien con SWIG para que cualquier otro idioma pueda vincularlo. Haskell tiene un buen FFI, por lo que podría intentar usarlo con Biolib, la biblioteca del kit de herramientas del NCBI; probablemente se mantengan mejor que BioHaskell.

3

Por el contrario, escribir programas en Haskell es tan conveniente que a menudo es más fácil proporcionar alguna funcionalidad faltante que tratar de comprender el código imperativo oscuro de otra persona.

Aunque Eric tiene problemas con mis habilidades de mantenimiento (hey, los parches son aceptados, ya sabes), creo que Haskell es una buena plataforma para la bioinformática, que permite al usuario escribir códigos concisos y efectivos. ¡Funciona para mi!

5

He comenzado el primer proyecto serio BioScala, que incluye un tutorial y una filosofía de diseño en ./doc. Además, estoy explicando el uso de Scala para bioinformática en blog.thebird.nl. BioScala es un trabajo en progreso. Como puedes usar tanto BioJava como BioRuby de Scala, y pronto BioLib, puedes comenzar a ejecutar.

0

Y junto a BioRuby, tiene biogem para paquetes que no están en el núcleo de bioruby, por lo que tiene muchos más paquetes.

Cuestiones relacionadas