Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

PDC 2008 - Le futur de C# vers C# 4.0 avec le Dynamic Programming et le Compiler as a Service !

Je suis actuellement en session avec Anders Hejlsberg sur une session relative au futur de C#.

image

Comme vous pourrez l'imaginer, cette session est l'une des sessions les plus convoitées par le public présent à cet événement, et pour cause, la salle qui à mon avis doit compter plusieurs centaines de sièges, voir un millier, est à mon avis comble !

Après une rétrospective de l'évolution de C# au travers des versions du .NET Framework, les réflexions de leur équipe, stratégies, ...  Anders arrive sur un chemin connu depuis de nombreuses années qu'est le choix du langage ... ?!?

Etonnant, contre toute attente, Anders nous explique tout simplement (et là, je dois vous avouer que cela me fait très plaisir) que le bon choix ne peut se retrouver que dans une stratégie de "Co-Evolution des nouveautés" entre les langages du .NET Framework et plus principalement entre Visual Basic et Visual C#...

Ceci terminé, Anders attaque dans le vif du sujet (puisque c'est le sujet de la session comme il nous l'a laissé entendre au début ;p) avec deux slides dont je me fais une joie de les partager avec vous :

P1090102 P1090104

Vous constaterez ainsi l'évolution du langage C# 4.0 vers la notion de Dynamic Programming (DLR) et celà se ressent d'autant plus dans la seconde slide sous forme de big picture en entrée sur les langages dynamiques comme IronPython, IronRyuby, C#, VB, ... et en sortie les solutions de destinations comme .NET, Silverlight, ... ou encore Office ... hum, hum, en lecture entre les lignes, celà nous laisse de bon présages pour l'avenir et plus particulièrement celui du keynote de ce mardi !

C'est ainsi que Anders arrive alors dans le vif du sujet et nous introduit des nouveautés en question de C#4 que je vous retourne en mode BulletPoints :

  • Dynamically typed object
    • Statically typed to be dynamic
    • Dynamic conversion
    • Dynamic method invocation

avec l'introductin d'un nouveau Keyword :"dynamic" ...
dynamic x = 1;
... compile type dynamic and run-time type System.Int32

image

  • Optional and named parameters
    • Optional parameters
    • named argument
    • named arguments must be last
    • named arguments can appear in any order
    • arguments evaluated in order written
  • Improved COM Interoperability
    • Automatic object to dynamic mapping
    • optional and named parameters
    • indexed properties
    • optional "ref" modifier
    • interop type embedding ("no PIA")

      ... doc.SaveAs("Test.docx");  ;p
  • Co- and Contra-Variance
    • .NET arrays are co-variant
    • ... but not safely co-variant
    • Until now, C# generics have been invariant
    • C#4 supports safe co-and contra-variance
    • ... out= Co-variant / Output positions only

Variance in C# 4.0

  • Supported for interface and delegate types
  • "Statically checked definition-site variance"
  • Value types are always invariant
  • ref and out parameters need invariant type

Anders conclu ainsi sur une vision de Meta programming ... dynamic code générating ... avec une approche d'un méta programming sur la plateforme .NET.

Mais ce n'était pas tout, voilà que Anders aborde une autre point tenant à coeur tout développeur qu'est le compiler avec une vision en tant que "Compiler as a Service" !!!

Compiler as a Service :
IMAG0036

Une des annonces non négligeable est la volonté de ré-écriture du compiler de C# afin de ne plus en faire une simple boîte noire mais bien de permettra à tout développeur d'accéder à celui-ci au travers d'un CSharpEvaluator ... voyez par vous même :

image image

... désolé pour les captures de pauvre qualité, par manque de batterie j'ai du passer en mode photo sur mon pocket ;)

Redo
Member of WygTeam
www.wygwam.com

Publié lundi 27 octobre 2008 23:08 par redo
Classé sous : , ,
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

# re: PDC 2008 - Le futur de C# vers C# 4.0 avec le Dynamic Programming et le Compiler as a Service !

Les arguments optionnels en C#, depuis le temps que je les attends ceux là... :p

mardi 28 octobre 2008 09:52 by KooKiz
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- Merci par Blog de Jérémy Jeanson le 10-01-2019, 20:47

- Office 365: Script PowerShell pour auditer l’usage des Office Groups de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 11:02

- Office 365: Script PowerShell pour auditer l’usage de Microsoft Teams de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 10:39

- Office 365: Script PowerShell pour auditer l’usage de OneDrive for Business de votre tenant par Blog Technique de Romelard Fabrice le 04-25-2019, 15:13

- Office 365: Script PowerShell pour auditer l’usage de SharePoint Online de votre tenant par Blog Technique de Romelard Fabrice le 02-27-2019, 13:39

- Office 365: Script PowerShell pour auditer l’usage d’Exchange Online de votre tenant par Blog Technique de Romelard Fabrice le 02-25-2019, 15:07

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Stream Portal par Blog Technique de Romelard Fabrice le 02-21-2019, 17:56

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Video Portal par Blog Technique de Romelard Fabrice le 02-18-2019, 18:56

- Office 365: Script PowerShell pour extraire les Audit Log basés sur des filtres fournis par Blog Technique de Romelard Fabrice le 01-28-2019, 16:13

- SharePoint Online: Script PowerShell pour désactiver l’Option IRM des sites SPO non autorisés par Blog Technique de Romelard Fabrice le 12-14-2018, 13:01