
Julia 1.1 apporte peu de nouvelles fonctionnalités, mais celles-ci devraient simplifier la vie des développeurs. Tout d’abord, les exceptions peuvent désormais s’empiler : si le code lance une exception pendant le traitement d’une exception, les deux sont gardées dans une pile. Auparavant, la première exception était écrasée par la seconde. Cela permettra de déboguer plus facilement le code, en remontant directement à la cause première. La méthode catch_stack est disponible pour accéder à cette pile ; pour le moment, l’implémentation est expérimentale et l’API pourrait changer. L’opérateur ~ est souvent utilisé en probabilités pour indiquer qu’une variable aléatoire suit une certaine distribution de probabilité ; Julia dispose de cet opérateur depuis un certain temps, mais celui-ci ne pouvait pas s’appliquer sur des vecteurs : le compilateur ne comprenait pas la forme .~, ce qui est maintenant le cas.
Les méthodes findmin, findmax et findall ne retournaient pas toujours le même type pour indiquer quels éléments correspondent à la requête. Désormais, quand la recherche se fait dans une matrice ou un tableau d’ordre supérieur, ces méthodes renvoient des objets CartesianIndex. Ce changement casse légèrement la compatibilité avec le code existant, mais il a été estimé qu’il aurait dû être effectué pour la 1.0 et que c’était donc un défaut.
La bibliothèque standard s’est enrichie d’une série de méthodes. Par exemple, splitpath pour convertir un chemin en ses différentes composantes ; isnothing pour déterminer si l’argument est nothing ou non (par exemple, une donnée absente) ; eachrow, eachcol et eachslice pour itérer efficacement sur des morceaux de tableaux ; les systèmes BSD disposent d’une série de méthodes pour les détecter et, au besoin, adapter le code.
Voir aussi : la liste complète des changements.