¿Qué tiene Perl que lo hace tan útil en bioinformática? ¿Por qué no es C ++ o Matlab o Python el gran lenguaje?
fuente
¿Qué tiene Perl que lo hace tan útil en bioinformática? ¿Por qué no es C ++ o Matlab o Python el gran lenguaje?
Lo que hace que Perl sea tan útil para la bioinformática es que 1) es un lenguaje relativamente fácil de aprender, 2) hay muchos scripts preexistentes para usar, incluido bioPerl y 3) es probable que el laboratorio en el que trabaja tenga cientos de scripts y módulos , ya escrito en Perl.
El nivel del programador tiene menos que ver con la elección del idioma, luego con las tareas que se le solicitan. Cualquier trabajo avanzado o computacionalmente costoso generalmente se escribe en Java o C y se ejecuta en un clúster.
Una cosa que hay que entender sobre la bioinformática es que es un campo diverso, con diversas tareas que se les pide a quienes lo practican. No es raro que use Perl, R y Java en un día. Perl para secuencias de comandos, mover archivos, descargar cosas, algunos análisis de datos básicos, etc., R para visualización de datos y Java para computación algorítmica / trabajar con y modificar aplicaciones. Dicho esto, la mayoría de las tareas que sí requieren el uso de Perl, sin embargo, me gustaría cambiar a Ruby, ya que tiene funciones más avanzadas, lambdas y procs, que pueden conducir a un código más sucinto y está totalmente orientado a objetos.
Aparte de las virtudes inherentes de Perl, parte de esto es simplemente historia. Hubo una gran expansión de la bioinformática a principios de siglo debido al Proyecto Genoma Humano. En ese momento, Perl era, con mucho, el lenguaje de script más popular en uso general . Ruby y Python ciertamente estaban presentes, pero no tenían casi el soporte / mente que comparten hoy. Esto le dio a Perl mucho impulso en el campo.
Creo que el uso de Perl en bioinformática está disminuyendo, y R está aumentando rápidamente en popularidad. Pero para cualquier idioma que desee nombrar, probablemente pueda encontrar un laboratorio de bioinformática que lo use.
fuente
Voy a agregar una respuesta aquí, ya que creo que muchos de ellos han perdido un punto clave ...
Perl es popular en bioinformática porque originalmente es un lenguaje de procesamiento de texto .
El texto es rey
Perl hace que sea fácil:
El lenguaje no es (medio) malo
También tiene los beneficios de tener:
Si bien no permitirá crear programas de procesamiento que se ejecuten tan rápido como un equivalente en C, el tiempo de desarrollo es muy inferior y viene con baterías incluidas cuando se trata de procesamiento de texto ( expresiones regulares potentes , ¿alguien?), Lo que lo hace fácil para recoger y usar en un contexto de laboratorio para resolver estas tareas.
Portabilidad y extensibilidad de forma fácil
Además, obviamente también:
Pero la razón por la cual hay tantas extensiones y módulos bioinformáticos (y científicos en general) para Perl en primer lugar se debe a las razones expuestas anteriormente. En muchos casos, el diseño y las habilidades del lenguaje lo hacen un ajuste casi perfecto (a pesar de los posibles rencores que uno puede tener contra él) para el trabajo.
Todo esto hace que Perl sea un buen candidato para la investigación científica, especialmente en campos donde los datos a procesar están principalmente en formato de texto.
Por supuesto, han surgido otros idiomas y reclaman una cuota de mercado por diferentes razones (expresividad mejorada, mejor legibilidad, evitan explícitamente los trucos oscuros y las frases de guru-ish ...), pero aún compiten con Perl en ciertos aspectos (Ruby es tan rápido de aprender como lento para procesar datos, por ejemplo). Entonces, en el dominio de la bioinformática (o PNL) donde manejas formatos de texto, ciclos de investigación rápidos y más y más datos grandes que se hacen cada vez más grandes (gracias, genómica y NGS), Perl sigue siendo muy relevante.
En realidad, acabo de notar los comentarios de maple_shaft , Charles y geoffjentry , que también mencionaron la importancia de las expresiones regulares, por lo que no todos pasaron por alto esto. :)
fuente
Una de las grandes razones detrás de la popularidad de Perl en bioinformática es BioPerl , un conjunto integral de módulos para trabajar con datos relevantes.
Se parece a la mayoría de los módulos están realmente diseñados para trabajar con los datos generados por otros programas. Perl es una excelente cinta adhesiva para informes, después de todo.
fuente
Las herramientas se seleccionan por el nivel de habilidad de los operadores y la facilidad de adopción: un programa compilado o IDE lleva un tiempo superar un lenguaje interpretado simple.
Perl tiene algunas herramientas importantes, documentación seria, bibliotecas serias y amplia disponibilidad gratuita. ¿Qué es lo que no te gusta de nada de eso?
fuente
Perl tiene las mismas habilidades, construcciones de datos y métodos de otros idiomas, y es más fácil de aprender que la mayoría. Esto es bueno para los investigadores y científicos que no tienen mucha experiencia en programación, ya que pueden recoger fácilmente a Perl y lograr la (s) tarea (s) deseada (s)
Adicionalmente:
Hay mucho soporte en línea y scripts gratuitos disponibles, lo cual es claramente ventajoso =)
En resumen, la mayoría de los científicos e investigadores solo quieren hacer el trabajo, y hacerlo lo más rápido posible, y Perl es la opción perfecta para eso.
fuente