[MàJ] Roslyn, la compilation en tant que service chez Microsoft
Ouvrir la boîte noire
Le 19 décembre 2013 à 11h17
3 min
Logiciel
Logiciel
Microsoft travaille sur un nouveau compilateur d'un genre nouveau. Ce projet, nommé Roslyn, donne actuellement lieu en interne à des tests et des adaptations des compilateurs VB.NET et C#. Explications.
Ouvrir la boîte noire
Roslyn est un projet particulier en développement chez Microsoft actuellement. Son objectif est de proposer une plateforme de compilation très différente de ce qui est actuellement proposé un peu partout, y compris dans les propres produits de l'entreprise, Visual Studio en tête. La fonctionnalité devrait d'ailleurs arriver dans une prochaine mouture de l’environnement de développement intégré (IDE) de la firme.
Selon les explications de Microsoft, le compilateur est actuellement une boite noire. Le développeur sait globalement ce qui s’y passe et la conduite des processus qui s’y déroulent. Selon un billet publié hier sur l’un des blogs de l’éditeur, le responsable Matt Gertz explique que le but de Roslyn est justement d’ouvrir ladite boîte noire et de fournir aux développeurs un nombre plus élevé d’informations sur ce qui s’y passe, pour leur permettre de les manipuler via une API (Application Programming Interface).
Un même compilateur pour VB.NET et C#
À travers plusieurs discussions avec des développeurs impliqués dans les tests de Roslyn, il ressort que l’ouverture du compilateur est importante pour la modularité et son extensibilité. Par exemple, les développeurs peuvent accéder à l’arbre syntaxique du code et ainsi le modifier directement. Dès lors, il devient possible d’y greffer des services, d’accéder aux symboles déclarés dans le code et ainsi de suite. Les extensions servant à retravailler le code seront en outre plus simples à développer.
En outre, comme nous l’a expliqué l’un des développeurs, l’un des gros avantages de Roslyn est qu’il s’agit d’un compilateur unique pour C# et VB.NET. Cette unification permet selon lui d’incorporer par la suite de nouvelles capacités sans pour autant provoquer de régressions.
Des préversions dans les prochains mois
La phase de test en interne concerne actuellement l’utilisation de Roslyn par les propres équipes de développement. Selon Gertz, ce sont ainsi 60 000 projets qui ont été recompilés pour tester les performances de cet outil spécifique. Microsoft n’indique pas de calendrier sur le déploiement de Roslyn et sa disponibilité concrète. Cependant, le « dogfooding » (l’utilisation en interne des propres technologies de l’entreprise) permet de préparer une prochaine série de préversions qui seront disponibles au téléchargement.
Les développeurs devraient donc pouvoir accéder à des moutures de test tout au long de l’année prochaine, mais on ne sait pas encore sous quelle forme. Il pourrait s’agir d’un composant à mettre en place dans Visual Studio, ou d’une bêta de la première mise à jour importante pour la version 2013 de l’environnement de développement.
[MàJ] Roslyn, la compilation en tant que service chez Microsoft
-
Ouvrir la boîte noire
-
Un même compilateur pour VB.NET et C#
-
Des préversions dans les prochains mois
Commentaires (86)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 18/12/2013 à 07h31
je me pose la question de l’intérêt de compiler en externe…. ces informations peuvent très bien être fournies en local.
Le 18/12/2013 à 07h35
Au niveau sécurité ça va être compliqué, en plus d’envoyer les sources chez ms, on est pas sur que la compilation ne rajoute pas quelques failles pour aider un peu les copain ( NSA ? :-) ).
Bref va falloir avoir une grosse cote de confiance.
Le 18/12/2013 à 07h39
Pour compiler sur le cloud il y’a bien a un moment ou le code source est envoyé ?
Quid de la backdoor rajouté automatiquement pour le compte de la NSA " />
Le 18/12/2013 à 07h38
" />
Sans vouloir troller, a part aspirer un maximum de code source, je ne vois pas où est l’intérêt pour MS. A moins que le service ne soit payant (en plus de la licence VS s’entend)
Le 18/12/2013 à 07h46
Simple,
Mise en place de backdoor automatique pour tous les codes.
Et le top , Ils on développer un algo qui analyse ton code et si tu utilise un algo innovant . Une alerte de monitoring au services juridique qui dépose le brevet immédiatement a ta place .
Le 18/12/2013 à 07h47
Le 18/12/2013 à 07h56
Le 18/12/2013 à 08h06
Soit je n’ai rien compris, soit le concept “compiler as a service” n’a que peu à voir avec une compilation à distance des projets Visual Studio.
Il s’agit plus de fournir un ensemble d’API permettant à un programme d’accéder, lors de l’exécution, à certaines fonctionnalités jusque là verrouillées, ou peu accessibles, du compilateur .NET; dessus se grefferont des ensembles de services.
Par exemple (cf la MSDN) :
J’ai vu en quelque part sur la MSDN un exemple d’outil “Paint-like” qui utilisait tout ça pour proposer un langage de script pour enregistrer des macros : avec Roslyn, c’est (presque) super simple de fournir une IDE intégrée avec éditeur de script (avec syntax highlight et tout et tout) et un compilateur à la volée.
Un des bénéfices immédiats sera la facilité accrue pour l’équipe de développement de Visual Studio d’accéder à tout un ensemble de fonctionnalités aujourd’hui développées en double (analyse de code, navigation vers des éléments de code, explorateur d’objets, etc).
Mais peut-être que j’ai tout compris de travers, hein. Peut-être que c’est juste un truc pour permettre à MS de
mettre en place des backdoors automatiques pour tous les codes
(non mais sérieux les gars " />)…
Le 18/12/2013 à 08h33
En fait comme dit dans les commentaires Roslyn devrait marcher en local. Le cloud c’est juste une application possible de cette technologie.
Le 18/12/2013 à 08h48
Le 18/12/2013 à 09h06
Le 18/12/2013 à 10h10
Le 18/12/2013 à 10h12
Le 18/12/2013 à 10h17
Le 18/12/2013 à 10h19
Le 18/12/2013 à 10h33
Le 18/12/2013 à 10h56
Le 18/12/2013 à 11h23
Le 18/12/2013 à 11h27
Je sais que c’est la mode mais j’en ai classe de toutes ces remarques sur la NSA.
On a pigé, et vous vous doutez bien que si Microsoft VEUT mettre des backdoors dans du code, pas besoin d’un compilateur dans le cloud pour ça, il suffit de l’ajouter au compilateur local et basta.
Ensuite je sais pas trop comment ça se passerait d’un point de vue des sources, faudra lire les petites lignes du contrat de licence comme d’hab…
Je pressens l’apparition de clause qui stipulent que comme pour les mails, Microsoft se réserve le droit d’analyser “automatiquement” les sources envoyées à des fins de statistiques etc etc…
Le tout enrobé de sucre via des features de type “détection avancées d’erreurs/optimisations automatiques” etc etc…
Le 18/12/2013 à 11h30
Le 18/12/2013 à 11h41
Le 18/12/2013 à 11h43
Le 18/12/2013 à 11h46
Le 18/12/2013 à 12h05
Le 18/12/2013 à 12h32
Le 18/12/2013 à 12h50
Le 18/12/2013 à 12h56
Le 18/12/2013 à 15h22
Le 18/12/2013 à 15h48
Le 18/12/2013 à 17h00
Le 18/12/2013 à 17h05
Le 19/12/2013 à 11h32
Super, la mise à jour! Je suis sûr que ça va aider certains à comprendre de quoi il s’agit réellement " />
Merci d’avoir pris le temps (et le risque) de prendre en compte les retours, c’est ça qu’on aime chez PCInpact! " />
Le 19/12/2013 à 11h38
Pour la compilation sur le cloud comme je l’ai indiqué au dessus c’est bien l’un des buts à mon avis. même si ce n’est pas le but direct du truc on est d’accord. " />
source
In CodeName Roslyn, we’re changing that dynamic by building an API that exposes compilers’ analysis engine, and opening a world of new scenarios including REPL, write-your-own refactorings, C# and VB as scripting languages, and taking .NET to the cloud.
Le 19/12/2013 à 11h45
Le 19/12/2013 à 11h54
Le 19/12/2013 à 12h06
Le 19/12/2013 à 12h45
Le 19/12/2013 à 12h50
68 commentaires, dont 65 1⁄2 par des gens qui lisent “Compiler as a service” ( = Le compilateur fournit un service à l’application ) et comprennent “Compiler in the cloud”… " />
Une fois pour toutes, Compiler As A Service, ça veut dire que le compilateur expose son fonctionnement interne à l’application qui l’utilise, plutôt que de recevor d’un côté un fichier source et de l’autre côté recracher une DLL hermétique. " />
Personne n’a jamais dit que le compilateur tourne sur un serveur chez Microsoft.
Par ailleurs, à tous ceux qui craignent que cela donne l’occasion à Microsoft d’injecter du code de tracking lors de la compilation… heu … ben … ils peuvent déjà, hein, puisque c’est eux qui ont écrit le compilateur ! " />
Le 19/12/2013 à 12h56
Le 19/12/2013 à 13h04
Le 19/12/2013 à 13h13
Le 19/12/2013 à 13h39
Sur la version d’avant, c’était la phrase d’accroche qui m’avait trompé “Skype étant désormais hébergé sur Azure, …”
C’est effectivement plus clair maintenant " />
Le 19/12/2013 à 13h39
Le 18/12/2013 à 13h04
Le 18/12/2013 à 13h22
Le 18/12/2013 à 13h46
Le 18/12/2013 à 13h47
Le 18/12/2013 à 14h00
Le 18/12/2013 à 14h08
Le 18/12/2013 à 14h10
Le 18/12/2013 à 14h20
Bon ben j’abandonne, je vais me coucher, tiens " />
Le 18/12/2013 à 14h35
Le 18/12/2013 à 14h40
Le 18/12/2013 à 14h47
Le 18/12/2013 à 14h51
Le 18/12/2013 à 14h56
Le 18/12/2013 à 14h58
Le 18/12/2013 à 15h03
Le 18/12/2013 à 15h05
Le 18/12/2013 à 09h16
Un premier pas avant de passer à un modèle de souscription annuelle, comme Adobe ?
Le 18/12/2013 à 09h16
Le 18/12/2013 à 09h18
Le 18/12/2013 à 09h19
Le 18/12/2013 à 09h19
Le 18/12/2013 à 09h29
Le 18/12/2013 à 09h31
Encore un bel exemple de porosité entre ministères et grandes entreprises capitalistes américaines! Après les labos, voilà que Roseline va compiler pour Microsoft!
on aura tout vu!
" />
Le 18/12/2013 à 09h32
Le 18/12/2013 à 09h34
Le 18/12/2013 à 09h35
Le 18/12/2013 à 09h42
Le 18/12/2013 à 09h45
Le 18/12/2013 à 09h48
J’attends d’en savoir plus sur le projet Bachelot.
Le 18/12/2013 à 09h58
Le 18/12/2013 à 10h04
Le 18/12/2013 à 10h08
Compilation…. et possibilité d’exécution? " />
Le 19/12/2013 à 13h40
Le 19/12/2013 à 13h46
Le 19/12/2013 à 14h03
Le 19/12/2013 à 14h04
Le 19/12/2013 à 14h10
Le 19/12/2013 à 14h20
Le 19/12/2013 à 14h23
Le 19/12/2013 à 14h41
Le 20/12/2013 à 12h01
Le 22/12/2013 à 09h46
Le 22/12/2013 à 18h21