Mars 2020#
La nouvelle version de Julia 1.4 a un peu de retard, mais elle devrait réduire les temps de latence dus à la compilation des packages importés. Des progrès ont été faits grâce à PackageCompiler.jl. Ce package permet de créer des applications codées en Julia et de les exécuter sur des plateformes ou Julia n’est pas installé. Voici une selection de liens repérés le mois dernier:
Billets de blog#
JuliaLang: The Ingredients for a Composable Programming Language une démonstration des avantages du Multiple Dispatch et du Duck-typing. Une occasion aussi de voir ce qui se cache derrière ces termes.
MPI parallelization in julia: A 1d shallow water example: Un exemple très simple de parallélisation avec MPI.jl. J’ai fait un exemple en deux dimensions pour résoudre l’équation de Maxwell en différences finies. Sur des petits programmes comme ça: Julia est plus rapide que le fortran.
Vidéo#
Cours d’Alan Edelman sur Julia et ses applications en machine learning et deep learning.
Packages#
Controlz.jl Simulation of simple controls problems in Julia. La documentation a été construite avec beaucoup de soin, d’équations et d’images. Il y a plein d’idées à piquer.
Franklin.jl un générateur de site web à partir de fichiers markdown. C’est une version Julia d’outils comme Hugo, Jekyll ou Pelican. Ce n’est pas aussi riche et esthétique que ces équivalents Go, Ruby ou Python mais on peut éxecuter du code julia. Un exemple ici avec le superbe blog de cormullion. J’ai réussi à le faire fonctionner sur GitHub donc je peux vous donner un coup de main si besoin.
Tutoriels et documentation#
Hugh Murrell Deep Learning Notes : Une série de 10 articles sur l’utilisation de Julia en Deep Learning. Cela démarre avec une introduction au langage puis la régression linéaire et cela monte progressivement jusqu’au réseau de neurones.
The Fast Track to Julia un pense-bête qui peut servir. Dommage qu’on ne puisse pas l’imprimer à la manière des Datacamp cheat sheets.
Je vous conseille de lire les FAQ de la documentation officielle. C’est rapide et on y apprend plein de choses. Regarder la réponse à la question What does « type-stable » mean?, c’est une erreur classique qui peut faire chuter les performances de votre code Julia.
Divers#
Some fun with π in Julia un article de 2017, avec des exemples de code pour calculer π. J’aime bien celui-la:
julia> compute_pi(n) = reduce(+,map(x->4/(1+x^2),1/2n:1/n:1))/n
p (generic function with 1 method)
julia> compute_pi(10000)
3.141592654423127