M# : une équipe de Microsoft dévoile un nouveau langage dérivé de C#

Le , par Hinault Romaric, Responsable .NET
Microsoft a parlé officiellement pour la première fois de son nouveau langage de programmation, qui porterait le nom de code M# (M Sharp), selon des rumeurs et qui est une extension du langage C#.

Joe Duffy, l’un des ingénieurs ayant travaillé sur le projet depuis pratiquement quatre ans, dévoile dans un article de blog les caractéristiques techniques de M# et les raisons qui ont poussé Microsoft à vouloir créer un nouveau langage de programmation.

« Pourquoi un nouveau langage de programmation ? » « J’admets volontiers que le monde a déjà une pléthore de langages », rétorque Duffy, qui note que chaque langage a ses faiblesses. Pour étayer ses propos, il présente un graphique où certains langages (à l’instar de C#, JavaScript et Java) offrent une meilleure sécurité et productivité, alors que d’autres, comme C++, offrent de meilleures performances.


Le but de M# est de jumeler les deux mondes en offrant à la fois sécurité, productivité et performance. Duffy décrit le langage comme un ensemble d’extensions de programmation système à C#, qui offre un meilleur équilibre entre « la performance » et « la sécurité et la productivité » que d’autres langages populaires.

M# devra être « le langage de plus bas niveau se trouvant tout en bas de la pile. Mais, il sera également sûr et assez productif pour l’écriture des solutions de niveau supérieur, comme les services Web ».

M# s’appuie essentiellement sur le langage C# parce que Microsoft voudrait profiter de sa syntaxe moins complexe, ainsi que de ses fonctionnalités modernes comme les expressions « lambdas » et les « délégués ». De plus, la société souhaiterait s’appuyer sur l’expertise de ses développeurs spécialisés en C#.

À terme, M# sera publié en open source, probablement avant la fin de cette année.

Source : billet de blog de Joe Duffy

Et vous ?

Que pensez-vous de ce nouveau langage de programmation ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Chuck_Norris Chuck_Norris - Rédactrice/Modératrice https://www.developpez.com
le 02/01/2014 à 13:11
Et il ne leur était pas possible de simplement publier une nouvelle version de C# ? A moins qu'ils se rendent compte que l'idée même de .NET n'était finalement pas si bonne que ça. Au moins, Java, c'est véritablement multiplateforme et ça justifie amplement la machine virtuelle et la perte de performances correspondante.
Avatar de MarieKisSlaJoue MarieKisSlaJoue - Membre émérite https://www.developpez.com
le 02/01/2014 à 13:15
Citation Envoyé par Hinault Romaric  Voir le message
Que pensez-vous de ce nouveau langage de programmation ?

La comme ça je vois pas bien quoi en pensez, je pense qu'il n'arrivera pas au final à tenir ses objectifs. A voir quel place le langage prendra, mais je pense que l'open source à déjà ses favoris et je vois mal certain développeur qui adule l'open source se tourner vers un langage de Microsoft qui pour eux représente le mal absolue.

Je suis déçu aussi du manque d'imagination de Microsoft. C#, F# et M#. Y'a une explication logique à ces noms ?
Avatar de Francis Walter Francis Walter - Expert éminent sénior https://www.developpez.com
le 02/01/2014 à 13:41
Bah cest une superbe idée de vouloir combiner la Sécurité et Productivité et la performance mais atteindront-ils leur objectif? Cest la grande question.
Jusqu'à là, les développeurs ont su faire avec les langages existants!
Javoue que c'est très ambitieux mais je pense qu'avec tous les problèmes que Microsoft a à régler en ce moment, suis pratiquement sûr qu'à la longue le projet finira par être négliglé comme beaucoup d'autres projets Microsoft qui n'ont pas le suivi nécessaire
Avatar de valkirys valkirys - Membre expérimenté https://www.developpez.com
le 02/01/2014 à 13:43
Citation Envoyé par Chuck_Norris  Voir le message
Et il ne leur était pas possible de simplement publier une nouvelle version de C# ? A moins qu'ils se rendent compte que l'idée même de .NET n'était finalement pas si bonne que ça. Au moins, Java, c'est véritablement multiplateforme et ça justifie amplement la machine virtuelle et la perte de performances correspondante.

Citation Envoyé par MarieKisSlaJoue  Voir le message
je vois mal certain développeur qui adule l'open source se tourner vers un langage de Microsoft qui pour eux représente le mal absolue.

Bof, mono est pas mal du tout, le problème est là pourquoi avoir développé C# en mode propriétaire ?
Avatar de Guulh Guulh - Membre émérite https://www.developpez.com
le 02/01/2014 à 13:45
Le titre est trompeur. Ce n'est pas Microsoft qui annonce un nouveau langage qui aura sa place aux côtés de C#, VB.Net F# et autres: il est question ici d'une équipe de MS (microsoft research) qui bosse sur un projet de recherche, comme le fut Cw en son temps. Ca sert à valider certains concepts avant de les déployer à grande échelle dans les langages existants.
As is hopefully clear from my bio, the language I describe below is a research effort, nothing more, nothing less. Think of me as an MSR guy publishing a paper

Avatar de Arnard Arnard - Membre chevronné https://www.developpez.com
le 02/01/2014 à 14:12
La partie CLI du langage est normalisée. Microsoft a publié certaines sources du CLR dans un but pédagogique (on peut lire, interdit de recopier). Donc parler de propriétaire est un peu réducteur

La vraie question n'est pas pourquoi avoir développé c# propriétaire, mais pouruqoi ne pas avoir fournit des implémentations pour macOS et linux. MS prêche pour sa paroisse. A coté, il y a un gros travail collaboratif avec Xamarin (fourniture de specs, de jeux de tests) afin d'avoir le meilleur support de .net sur pingouin !

Avant de parler de M# comme ça, il faudrait déjà savoir ce qu'il permettra vraiment de faire : des exemples, des jeux de tests pour comparaison...
Avatar de lunatix lunatix - Rédacteur https://www.developpez.com
le 02/01/2014 à 14:33
globalement, ca semble etre un C# précompilé ( a opposer a la compilation JIT de .net) et purgé de tout ce qui peut rendre cette précompilation difficile (Dynamic types etc..)

pas bete vu l'echec des langages a VM pour la programmation systeme : ca cherche un boucher un trou dans ce domaine : un langage de prog haut niveau et plus facile que C++ (même objectif que go, rust, D etc..)
Avatar de valkirys valkirys - Membre expérimenté https://www.developpez.com
le 02/01/2014 à 15:07
Citation Envoyé par Arnard  Voir le message
La partie CLI du langage est normalisée. Microsoft a publié certaines sources du CLR dans un but pédagogique (on peut lire, interdit de recopier). Donc parler de propriétaire est un peu réducteur

C'était comparé à la méthode de sun, les JSR.
La vraie question n'est pas pourquoi avoir développé c# propriétaire, mais pourquoi ne pas avoir fournit des implémentations pour macOS et linux. MS prêche pour sa paroisse. A coté, il y a un gros travail collaboratif avec Xamarin (fourniture de specs, de jeux de tests) afin d'avoir le meilleur support de .net sur pingouin !

C# avait été présenté comme le fer de lance du nouveau microsoft version Balmer... on voit les résultats aujourd'hui.
En effet microsoft aurait gagné à faire du multi OS, ne serait-ce que pour occuper le terrain.
Qt ou mono sont multi OS, par exemple peut-être que le M# les concurrencera
Avatar de alex_vino alex_vino - Membre émérite https://www.developpez.com
le 02/01/2014 à 15:11
Pour info l'auteur de ce blog ne parle jamais de M#, pour la simple et bonne raison que ce langage de programmation existe déjà et est breveté aux USA et Royaume-Uni.

Voici le lien officiel, l'entreprise britannique derrière cela ne fait aucunement partie de Microsoft (seulement Microsoft Gold Partner). Je peux l'affirmer car je travaille sur l'implémentation de M#, pas besoin de lancer de fausses rumeurs.

Il serait bon de Googler vos propos relatés Romaric Hinault, même Wikipédia l'affirme
Avatar de alex_vino alex_vino - Membre émérite https://www.developpez.com
le 02/01/2014 à 15:19
Citation Envoyé par valkirys  Voir le message
Qt ou mono sont multi OS, par exemple peut-être que le M# les concurrencera

Difficile de comparer Qt et C#, mais Mono comme tu dit permet de développer en .Net pour d'autres plateformes, donc à mon avis le multi-plateforme n'est pas une nécessité chez Microsoft car les outils existent déjà. Pour en avoir déjà fait Mono fonctionne déjà très bien
Offres d'emploi IT
Expert décisionnel business intelligence H/F
Safran - Ile de France - Évry (91090)
Consultant sap finance/controlling H/F
Safran - Ile de France - Vélizy-Villacoublay (78140)
Data scientist senior H/F
Safran - Ile de France - Magny-les-Hameaux (Saclay)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil