Con esta entrada y durante las próximas semanas quiero comenzar con un experimento para estos meses de verano. Publicar un "diario" en el que explicaré cómo he aprendido de Julia. Un lenguaje del que ya hemos hablado en diferentes ocasiones y el cual es candidato a ser uno de los lenguajes de referencia para los científicos de datos en los próximos años. Una serie a la que llamaremos "Hola Julia!",
La idea del "diario" no es no esta pensada para empezar a programar en Julia sin conocimientos previos de programación. Ya que es un "diario" en el que se describe cómo hacer las tareas en este interesante lenguaje. Explicando cómo implementar en este lenguaje patrones ya conocidos. Tampoco explicaré los conceptos básicos de aprendizaje automático, cuando implementemos estos diferente modelos en Julia.
¿Por qué Julia?
Julia es un lenguaje de programación relativamente nuevo ya que apareció en 2012 y la versión 1.0 se publicó en verano de 2018. Al ser un lenguaje tan reciente está basado en los últimos estándares como Unicode y diseñado para trabajar fácilmente con computación paralela y en la nube. Lo que en otros lenguajes más populares requiere las instalación de librerías adicionales.
Otra de las ventajas es su gran velocidad de ejecución. Muy próxima a lo que se puede conseguir con C o FORTRAN, pero sin la complejidad de estos. Generalmente el código escrito en Julia es más rápido que el equivalente para Python, R o Matlab. Llegando a observarse diferencias considerables. Esta diferencia se debe a que Julia se compila sobre la marcha, no se interpreta, por lo que puede aprovechar mejor las capacidades de hardware sobre el que se ejecuta en cada momento. Quizás el único precio que hay que pagar es un cierto retraso en tareas sencillas debido al tiempo necesario para la compilación del código.
Instalación de Julia.
La instalación de Julia es relativamente sencilla. Solamente hay que ir a la página del proyecto y descargar la versión para nuestro sistema operativo. Existiendo versiones para Windows, macOS, Linux y BSD.
Windows
En el caso de Windows lo que nos descargamos es un asistente que se ejecuta como cualquier otro. Solamente hay que seleccionar la ruta de instalación para tener el lenguaje instalado y confirmar la selección.
macOS
Para macOS lo que se descarga es una imagen dmg que contiene el programa. La instalación simplemente requiere copiar el programa dentro de la imagen en la carpeta de aplicaciones.
Al ser una aplicación descargada de Internet es posible que la primera vez que se ejecute Julia el sistema nos pida confirmación dependiendo de la configuración de seguridad. Aunque la aplicación esta firmada por el desarrollador.
Conda (Anaconda)
En el caso de tener instalado Conda (Anaconda) en nuestro ordenador de trabajo es posible instalar Julia a través de este. Para lo que solamente tendremos que ejecuta el comando
conda install -c conda-forge julia
Trabajar con Julia sin instalación
Si no queremos instalar Julia en nuestro ordenador para las primeras pruebas se puede trabajar en la nube gracias a Julia Box. Una página web en la que es posible ejecutar nuestro código con una interfaz basada en Jupyter.
Esta es una opción que no usaré, pero para puede ser una buena opción para aquellos que quieran comenzar con Julia sin tener que instalar nada en sus ordenadores.
Integración con Jupyter
Durante los primeros días vamos a usar Julia en Jupyter, para lo que deberemos tener previamente instalado esta herramienta. Algo que aquellos que tengan instalado Anaconda ya tendrán en sus maquinas. Para enlazar Julia con Jupyter es necesario abrir instalar el paquete IJulia
en Julia. Lo que se puede conseguir ejecutando los siguientes comandos:
using Pkg Pkg.add("IJulia")
Para más detalles se puede consultar la referencia en la que se explica cómo integrar Julia en Jupyter Notebook.
¡Hola Julia!
Para finalizar esta primera entrada de la serie podemos ejecutar el tradicional programa ¡Hola mundo¡ en Julia. O, más bien, una adaptación de este: ¡Hola Julia!
En primer lugar, tenemos que abrir Julia, para lo que podemos ir la aplicación que se ha instalado en nuestro ordenador y pulsar sobre él. Lo que nos lanzará una terminal del sistema con una pantalla como la siguiente:
Julia en la línea de comandosEn Julia la función para escribir por pantalla es println()
. A la que se le debe pasar una cadena de texto con el mensaje que deseamos escribir. Así en la terminal solamente tendremos que ejecutar el comando
println("¡Hola Julia!")
Lo que nos da el siguiente resultado:
¡Hola Julia!Para salir de la terminal lo podemos hacer con el comando exit()
.
Ejecutar el programa desde un archivo
En las líneas anteriores lo que se ha hecho es ejecutar Julia en modelo interactivo. Un modo que es para explorar, pero generalmente vamos a querer guardar los programas en archivos para poder reutilizarlos. Los archivos de Julia tienen por convenio la extensión jl
. Ahora con cualquier editor de texto podemos escribir la línea anterior y guardarla en un archivo con esta extensión.
En la línea de comandos, para ejecutar este programa solamente tenemos que hacer
julia hola.jl
En donde hola.jl
es el nombre que le hemos dado al archivo. Es importante incluir la extensión en el nombre de archivo, ya que en caso contrario tendremos un error ya que Julia no completa la extensión, como sí sucede en otros intérpretes.
Resumen
En esta primera entrada hemos visto cómo instalar Julia y su funcionamiento básico. Además, hemos creado nuestro primer programan, una versión del tradicional "¡Hola Mundo!".