.NET-Sprache
Eintrag zuletzt aktualisiert am: 07.03.2004
Die Anzahl der
Programmiersprachen, die
MSIL-Code für das
.NET Framework erzeugen können kann beeindrucken: Neben den fünf Sprachen von Microsoft und drei Sprachen von Microsoft Research gibt es noch 19 weitere
Compiler anderer Anbieter. In den insgesamt 27 Sprachen sind nicht nur objektorientierte Sprachen wie C#,
Java, C++, Visual Basic und Delphi, sondern auch funktionale Sprachen wie
SML, Caml und Haskell sowie "alte Tanten" wie FORTRAN und COBOL. Bis auf C++ 7.0 verschenkt Microsoft übrigens alle anderen Sprachen in einer Kommandozeilencompiler-Variante. Auch unter den anderen Anbietern findet sich viel Freeware. Sowohl
MSIL-Code als auch
Java-Byte-Code erzeugen kann als einziges das Gardens Point Component Pascal der Queensland University. Die
Java-Variante von Microsoft (
JSharp) erzeugt nur
Managed Code für das
.NET Framework (vg. [4]). C# ist inzwischen ebenfalls bei der
ECMA ein Standard (
ECMA Standard 334, Arbeitsgruppe TC39/TG2).
Basis für die Integration verschiedener Sprachen ist die
Common Language Specification (
CLS). Die
CLS ist ein Regelwerk für
Compiler, das festlegt, wie die Umsetzung von sprachspezifischen Konzepten in die
MSIL erfolgen muss. Kern der
CLS ist das
Common Type System (
CTS), das ein einheitliches System von Datentypen definiert. Denn nur wenn die verschiedenen Sprachen die gleichen Datentypen verwenden, ist eine problemlose Integration möglich.
CLS und
CTS ermöglichen nicht nur den sprachübergreifenden Aufruf von
Methoden, sondern auch die
Vererbung zwischen verschiedenen Sprachen.