JULIA, dites au revoir au problème du double langage !

Article

Tech

Julia vous souhaite une bonne lecture de cet article !

Présentation et historique 

Julia est un langage de programmation poussé qui nous vient du fameux Massachussets Institute of Technology (MIT). Un site et un blog sont consacrés à ce langage depuis 2012. Mais la version 1.0 n’est apparue qu’en 2018 pour ce projet lancé en 2009. 

Aujourd’hui, le langage est soutenu par des entreprises telles qu’Intel, la Moore Foundation et bien sûr, le MIT.   

Les objectifs derrière Julia ? 

Disons-le d’emblée, les personnes derrière ce langage sont ambitieuses et l’étaient dès la genèse du projet ! 

Ce langage a des objectifs très élevés :

  • Avoir la rapidité du langage C.

  • Il est Homoiconic de la même manière que le langage LISP

  • Écriture mathématique Matlab ou Mathematica

  • Utilisable pour la programmation générale comme Python.

  • Simple pour faire des statistiques comme R.

  • Naturel pour de la manipulation de texte comme Perl. 

  • Une algèbre linéaire complète et puissante comme Matlab.

  • Bien pensé pour agglutiner des programmes ensemble comme Shell. 

  • Interactif comme LISP, Python ou Matlab, mais compilé comme du C/C++.

  • Calcul distribué nativement avec Hadoop, mais sans un nombre interminable de passe-plats comme en JAVA

  • Orienté programmation fonctionnelle comme Caml et consort. 

Plutôt audacieux comme objectifs non ?

Pour ! 


Les avantages de ce langage !

Ses performances sont très proches de C/C++ ou Fortran, malgré l’usage d’un récupérateur de mémoire.

  • Le MIT et Intel soutiennent ce langage. En quoi est-ce un avantage ? Parce que il ne devrait pas s’évaporer du jour au lendemain. 

  • Il devrait être utilisé dans des systèmes techniques innovants dans les mois ou années à venir ! Pourquoi ? Parce que ce langage gagne ne popularité dans le milieu de la recherche fondamentale et de la R&D. 

  • De nombreuses librairies de calculs scientifiques utilisent Julia ou migrent vers ce langage. 

  • Ce langage est très facile à interfacer avec Python, Fortran mais aussi C et R. 

  • Il résout le problème du double langage

Contre !


Julia a quelques freins, mais pas beaucoup !

En termes d’analyse statique et de sûreté mémoire, Julia est loin d’être un monstre. De ce point de vue, il se situe à mi-chemin entre Python et Rust. Il a la même stratégie de gestion de la mémoire que Go. 

  • Alors que Julia supporte parfaitement bien nativement le multithreading et le calcul distribué, il n’apporte cependant pas le même niveau de sûreté que Rust pour l’exécution des tâches concurrentes.  

  • Julia accepte très bien que d’autres langages s’interfacent avec lui, mais tolère mal au contraire de s’interfacer avec d’autres. (C’est à dire qu’un Langage tiers vers Julia sera opérationnel alors que Julia vers un langage tiers ne fonctionnera pas) 

  • Julia sera-t-il rétrocompatible ? Il y a des promesses mais pas de garanties.

Et voilà pour cette rapide présentation de Julia ! Peut-être le nec plus ultra pour résoudre vos soucis de double langage. Le MIT et Intel le soutienne et le secteur universitaire l’a également largement adopté. Alors, convaincus ? 

Pour approfondir vos connaissances sur le langage, on vous conseille cet article ! 😉

Si vous souhaitez en savoir plus sur Julia, n’hésitez pas à nous contacter, et rendez-vous sur notre site web pour découvrir nos compétences en développement web et en développement applicatif

Partager cet article

Partager cet article

Partager cet article

Nos derniers articles et livres blancs