CLI et liste des langages .NET
CLI (Common Language Infrastructure) ou en français Infrastructure de Langages Commune est un environnement d'exécution de code définit par une spécification standard et ouverte, ECMA-335 et ISO/IEC 23271.
Elle a été créée par Microsoft et implémentée comme partie de .NET et des frameworks compatibles Mono et Portable.NET.
Ne pas confondre avec le CLI "command-line", pour lequel vous avez un ensemble d'outil sur GitHub, dotnet/cli. Avec ces outils pour créez des applications en ligne de commande, en bytecode ou binaire exécutable. Ici on décrit l'infrastructure général de .NET.
Les codes sources en langages de programmation compatibles sont compilés en CIL (Common Intermediate Language), un langage indépendant de la machine et du processeur, qui est exécuté par le système d'exécution virtuel (VES) propre au framework de la machine (.NET etc.).
Pour qu'un langage puisse être porté sur la CLI, il doit être conforme à deux spécifications:
- CTS (Common Type System).
Un ensemble de types et d'opérations sur les types. - CLS (Common Language Specification).
En ensemble de règles permettant à des langages différents d'utiliser les mêmes librairies.
Noter cependant que des langages dynamiques, donc sans type de données, ont pu être portés grâce à l'ajout d'un runtime complémentaire, le DLR (Dynamic Language Runtime).
Liste des principaux langages .NET
La plupart des langages populaires ont une version .NET, mais le plus utilisé reste C#, une version de C++ conçu spécialement pour cette plateforme.
Java étant concurrent de .NET n'est pas porté par l'éditeur.
- A#. Ada.
- C Sharp dans Visual Studio Express.
- C++/CLI dans Visual Studio Express.
- DotLisp. Lisp.
- Dyalog APL. APL.
- Eiffel.
- FTN95. Fortran.
- Hugs98 for .NET. Haskell.
- ICC. By Princeton.Compilateur C réadressable dans Portable.NET.
- IronRuby par Microsoft. Ruby.
- NetCOBOL par Fujitsu. Wildcat COBOL.COBOL.
- MrLoose.Forth. Forth.
- Visual J# par Microsoft dans Visual Studio Express. Java.
- JavaScript:
Managed JScript dans le navigateur. JScript .NET dans le framework .NET. DotGnu JScript dans Portable.NET.
- PHP4Mono. PHP.
- Scaladotnet. Scala.
- Tcl. (Eagle).
- Visual APL. APL.
- Visual Basic inclus dans Visual Studio.
Voir aussi
Références