Recientemente leí una publicación de R-Bloggers, que se vinculaba a esta publicación de blog de John Myles White sobre un nuevo lenguaje llamado Julia . Julia se aprovecha de un compilador justo a tiempo que le da tiempos de ejecución rápidos y malvados y lo pone en el mismo orden de magnitud de velocidad que C / C ++ (el mismo orden , no igualmente rápido). Además, utiliza los mecanismos de bucle ortodoxos con los que estamos familiarizados aquellos de nosotros que comenzamos a programar en lenguajes tradicionales, en lugar de las declaraciones de aplicar R y las operaciones vectoriales.
R no va a desaparecer de ninguna manera, incluso con tiempos tan increíbles de Julia. Tiene un amplio soporte en la industria y numerosos paquetes maravillosos para hacer casi cualquier cosa.
Mis intereses son de naturaleza bayesiana, donde la vectorización a menudo no es posible. Ciertamente, las tareas en serie se deben realizar utilizando bucles e implican un gran cálculo en cada iteración. R puede ser muy lento en estas tareas de bucle en serie, y C / ++ no es un paseo por el parque para escribir. Julia parece una gran alternativa a escribir en C / ++, pero está en su infancia y carece de la funcionalidad que me encanta de R. Solo tendría sentido aprender a Julia como un banco de trabajo de estadísticas computacionales si obtiene suficiente soporte de la comunidad estadística y la gente comienza a escribir paquetes útiles para ello.
Mis preguntas siguen:
¿Qué características necesita tener Julia para tener el encanto que hizo de R el lenguaje de facto de las estadísticas?
¿Cuáles son las ventajas y desventajas de aprender a Julia a hacer tareas computacionalmente pesadas, en lugar de aprender un lenguaje de bajo nivel como C / ++?