Roslyn : Microsoft bascule son compilateur .Net en open source

C'est une nouvelle étape dans la stratégie open source de Mircrosoft. L'éditeur entend ainsi donner les moyens à des éditeurs tiers de s'approprier l'infrastructure .Net.

En cours de développement dans les laboratoires de Redmond depuis plusieurs mois, Roslyn a été livré en pré version (Preview) par Microsoft cette semaine à l'occasion de la Build, son événement mondial à destination des développeurs. Couvrant C# et Visual Basic, le compilateur (dont le nom définitif est .Net Compiler Platform) s'accompagne d'une série d'API. Elles permettent d'accéder à l'ensemble des informations stockées par Roslyn à propos du code. Il s'agit par exemple des éléments issus de l'analyse sémantique du code, de la compilation vers CIL et de l'émission de code. 

Fait marquant, cette Preview est disponible en open source (sur la forge Codeplex de Microsoft). Le groupe rompt ainsi avec le modèle traditionnel du compilateur sous forme de boite noire pour opter pour une posture entièrement transparente. Une vraie rupture dans la culture de Microsoft, d'autant que le compilateur est considéré comme une des briques maîtresses d'un environnement de programmation. 

En proposant cette brique en open source, l'objectif premier de Microsoft est de faciliter le travail de ses partenaires proposant des infrastructures et environnements de développement autour de .Net. D'ailleurs lors de sa présentation, Microsoft n'a pas hésité à mettre en avant l'un d'entre eux : Xamarin. 

Connue pour avoir développé un fork open source de .Net, cette société a bâti depuis 2012 une série d'outils pour développer en C# des applications pour Windows, mais aussi pour iOS et Android. L'arrivée de la .Net Compiler Platform lui ouvre de nouvelles perspectives, notamment en matière de meta-programmation, d'embarquement de code C# et VB dans des langages de domaine spécifique ou de génération de code. Son fondateur Miguel De Icaza est monté sur scène pour témoigner.

 Le projet Roslyn sur Codeplex

Microsoft / Open source