IronPython

Implementierung der Programmiersprache Python für die Common-Language-Infrastructure
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 19. April 2007 um 09:55 Uhr durch 89.245.93.24 (Diskussion). Sie kann sich erheblich von der aktuellen Version unterscheiden.

IronPython ist eine Implementierung der Programmiersprache Python für die Common-Language-Infrastructure. Sie zielt also auf Microsofts .NET-Umgebung beziehungsweise auf die Open-Source-Variante Mono ab.

IronPython
Basisdaten
Erscheinungsjahr: 2006
Designer: Jim Hugunin
Entwickler: Jim Hugunin, Microsoft
Aktuelle Version: 1.1  (17. April 2007)
Betriebssystem: Plattformunabhängig
Lizenz: IronPython License
www.codeplex.com

IronPython ist vollständig in C# geschrieben und wird im Rahmen von Microsofts Shared-Source-Initiative bereitgestellt. IronPython steht in der Version 1.1 zur Verfügung und implementiert den Sprachumfang von cPython 2.4 sowie einige der Schlüsselworte von Python 2.5.

In IronPython erstellte Programme lassen sich sowohl interpretieren als auch just-in-time in ausführbare Dateien übersetzen. Wie in .NET üblich, kann man mit IronPython auf Bibliotheken zugreifen die in anderen .NET Sprachen geschrieben wurden, ebenso wie diese mit Einschränkungen auf in IronPython geschriebene Bibliotheken zugreifen können.


Beispiele

Eine Ausgabe ohne .NET Bibliothek:

print "Hallo Welt!"

Das gleiche Beispiel diesmal mit einer "internen" .NET Bibliothek:

from System import Console

Console.WriteLine("Hallo Welt!")

Und einmal mit Hilfe einer "externen" .NET Bibliothek, wobei die MyLib.dll in einer beliebigen anderen .NET Sprache (z.B. C#, VisualBasic, C++) geschrieben sein kann:

import clr
clr.AddReferenceToFile("MyLib.dll")
from MyLib import Out

Out.Print("Hallo Welt!")

Siehe auch

  • Python - Die Programmiersprache Python
  • Jython - Java-Implementierung der Programmiersprache Python.
  • PyPy - Implementierung der Programmiersprache Python in Python selbst.
  • Boo - Implementierung der Python-ähnlichen Programmiersprache Boo für .NET.