Dix ans après sa suppression, le runtime open source multi-plateforme Mono pour le développement basé sur .Net de Microsoft retrouve son interpréteur .Net. À l’époque, l’éditeur l’avait retiré pour pouvoir gérer plus facilement le développement de Mono. Avec cette réintégration, les développeurs de Mono peuvent envisager d’utiliser l'interpréteur en exécution de code en mode mixte, et combiner du code interprété avec du code compilé statiquement.
Mais que peut apporter cette exécution de code en mode mixte à Mono ? « Quand l'exécution en mode mixte sera disponible, les développeurs pourront bénéficier des optimiseurs de compilation de la plate-forme LLVM pour les principales bibliothèques sans perdre la possibilité d’exécuter du code dynamique », a expliqué Miguel de Icaza, maître d’œuvre du projet Mono, qu’il a lancé en 2001.
Execution plus rapide
L’exécution en mode mixte permettra également de faire tourner des applications scriptables sur des périphériques utilisant les langages .Net. L'interpréteur lui-même fournit un mécanisme plus léger pour exécuter du code. Certains programmes peuvent s'exécuter plus rapidement en étant interprétés qu'en passant par le compilateur d’exécution à la volée, dit Just-in-Time (JIT).
L'interpréteur pourrait également apporter des améliorations au code Mono compilé statiquement et permettre à des langages de script basés sur .Net de tourner dans des environnements statiquement compilés comme IronRuby. Le mode mixte pourrait aussi permettre de demander à l'interpréteur d'exécuter du code qui n'est pas sensible aux performances, comme celui des constructeurs statiques ou un code d'initialisation, ou de passer du mode interprété à la compilation « à la volée » en cas de dépassement du seuil.
Commentaire