Curso de Julia

Presentación

Julia es un lenguaje de programación dinámico de alto nivel, pensado específicamente para dar alto rendimiento en análisis numérico y ciencia de datos. Fue creado en 2012 en MIT y cuenta ahora mismo una comunidad muy extensa, siendo utilizado por algunos de los mejores grupos de investigación a nivel internacional, y tiene gran proyección de futuro. Además, es software libre y de código abierto. Permite, a diferencia de otros lenguajes, reproducibilidad completa de experimentos numéricos al permitir fijar cada librería a la versión deseada.

Este se lenguaje se utiliza ya para docencia en múltiples centros como MIT y Stanford, por citar algunos.

El ganador del premio Turing (el equivalente al Nobel en Informática) en 2021, Jack Dongarra, dijo en una entrevista que este lenguaje es mejor que otros y una alternativa de futuro (ver entrevista de Jack Dongarra).

Al igual que en curso citado del MIT, Stanford, y según recomienda el propio Dongarra; en el curso utilizaremos principalmente Jupyter Notebooks como interfaz con Julia.

Desarrollo del curso
  1. ¿Cómo y por qué Julia?
  2. Ingredientes básicos: Lógica, bucles, vectores, matrices, meta-programación, y macros
  3. Mutiple dispatch: Números duales, Diferenciación automática, y el algoritmo de Euclides
  4. Paquetes habituales: Gráficas, manejo y guardado de datos, estructuras estadísticas, cálculo paralelo
  5. Cálculo científico
  6. Machine learning: Redes neuronales

Evaluación. Responder a las preguntas siguientes en el documento enlazado y enviar la solución (en formato .ipynb o .jl) a dgcastro@ucm.es. El asunto del mensaje debe ser [compumates-julia] seguido del nombre del alumno.

Algunos cursos relacionados

Several MIT courses involving numerical computation, including 18.06 / 18.C06, 18.065/18.0651, 18.303, 18.330, 18.335/6.7310, 18.337/6.7320, and 18.338 are beginning to use Julia, a fairly new language for technical computing. This page is intended to supplement the Julia documentation with some simple tutorials on installing and using Julia targeted at MIT students. See also our Julia cheatsheet listing a few basic commands, and various Julia tutorials online.

See also MIT Special Subject in Mathematics: Introduction to Julia for Data Science