IronPython
IronPython představuje implementaci programovacího jazyka Python v prostředí .NET a Mono. Autorem je Jim Hugunin, který je rovněž původním tvůrcem javovské implementace jazyka Python zvané Jython (historicky starší než IronPython). IronPython je napsán celý v programovacím jazyce C#. Souvislost mezi zmíněnými dvěma implementacemi pravděpodobně vyplývá i ze syntaktické podobnosti jazyků Java a C#.
Aktuální verze | 2.7.11 (17. listopadu 2020) |
---|---|
Vyvíjeno v | Python a C# |
Typ softwaru | interpret a programming language implementation |
Licence | licence Apache |
Web | ironpython |
Některá data mohou pocházet z datové položky. |
Implementaci IronPython autor vyvíjí pro firmu Microsoft, která je tvůrcem platformy .NET i jazyka C#. Verze IronPython 2.0 byla uvolněna 10. prosince 2008 a funkčně realizuje vlastnosti Python verze 2.5. Jinými slovy to znamená, že IronPython dosáhl vlastností hlavní implementace Pythonu. Verze IronPython 2.7 byla uvolněna 12. března 2011 a implementuje všechny vlastnosti jazyka Python 2.7, což je poslední plánovaná hlavní verze série Python 2.x. Verze Python 2.6 a 2.7 vznikly jako přechodové verze mezi Python 2.x a Python 3.x. Ve svém důsledku to znamená, že IronPython 2.7 implementuje celou řadu syntaktických konstrukcí a dalších vlastností z jazyka Python 3.x (Python 2.7.1 byl uvolněn v listopadu 2010, Python 3.2 v únoru 2011).
Licence byla změněna na Microsoft Public License. Proti dřívějším licencím se jeví jako příklon k Open Source.
Rozšiřovatelnost rozhraní
Jedna z klíčových výhod, kterou IronPython přináší, spočívá v možnosti jeho využití v roli vrstvy pro rozšiřování funkčnosti aplikačního rámce (application framework) napsaného v nějakém jazyce prostředí .NET. Interpret jazyka IronPython může být poměrně jednoduše zabudován do existujícího aplikačního rámce .NET. Jakmile tomu tak je, mohou koncoví vývojáři používat pro interakci s objekty aplikačního rámce .NET skripty, které jsou napsány v IronPythonu. Tím lze rozšiřovat funkčnost rozhraní aplikačního rámce aniž bychom museli měnit základní kód .NET.
IronPython široce využívá takzvané reflexe. Jakmile získáme odkaz na .NETový objekt, dojde k automatickému importu typů a metod, které má tento objekt k dispozici. Díky tomu se s .NETovými objekty pracuje v IronPythonovských skriptech velmi intuitivně.
Externí odkazy
- IronPython (domácí stránka; anglicky)
- IronPython (vývojářská stránka projektu na CodePlex; anglicky)
- Microsoft Public License (anglicky)
- Jim Hugunin: Story of Jython