
la première version du compilateur AOT optimisant pour Scala et construit sur LLVM supporte l'ensemble du langage
L’équipe de développement de Scala vient d’annoncer la sortie de la première version de Scala Native numérotée v0.1. Comme nous l’avons expliqué il y a plusieurs mois, Scala Native vient pour corriger certains des inconvénients du langage de programmation orienté objet et fonctionnel Scala.
Scala Native est un compilateur AOT optimisant pour Scala construit sur l'infrastructure de compilateur LLVM. Pour information, la compilation anticipée (ou compilation AOT) est une compilation qui traduit un langage évolué en langage machine avant l'exécution d'un programme. Elle s’oppose à la compilation à la volée (JIT) qui se fait lors de l'exécution du programme. Cela signifie qu'il n'y a pas de phase warm-up qui est commune aux compilateurs JIT ; ce qui assure donc un démarrage instantané avec Scala Native.
Contrairement à l'implémentation de référence de Scala générant un bytecode qui s'exécute sur la machine virtuelle Java (JVM), la toolchain de Scala Native produit des exécutables natifs autonomes. D’après l’équipe de développement, cela permet à Scala de s’exporter de plus en plus vers des dispositifs à ressources limitées.

Moins d’un an après l’annonce du projet, Scala Native a gagné en maturité avec la finalisation de certaines fonctionnalités en termes de couverture du langage Scala. Scala Native v0.1 prend en charge l'ensemble du langage Scala, y compris les fonctionnalités plus avancées, « avec des différences sémantiques négligeables », d’après l’équipe du projet.
Parmi les autres fonctionnalités intéressantes de cette première version, on note également une interopérabilité transparente avec le code natif, mais également la prise en charge des IDE Scala existants. À cela, on peut ajouter encore une intégration parfaite avec sbt (simple-build-tool), un outil de build dont l'objectif est de fournir des fonctionnalités basiques et avancées très simples à implémenter sur un projet Scala ou Java. Scala Native v0.1 supporte également, mais en partie, les bibliothèques JDK de base.
Source : Blog Scala
Et vous ?



Voir aussi :


Vous avez lu gratuitement 412 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.