IronPython

linguaggio di programmazione
IronPython
linguaggio di programmazione
Ironpython-logo.png
AutoreJim Hugunin
Data di origine5 settembre 2006
Ultima versione2.7.5
UtilizzoScripting
ParadigmiProcedurale, Funzionale, Oggetti
TipizzazioneForte
Implementazione di riferimento
Sistema operativoWindows, Linux
Linguainglese
LicenzaApache License 2.0
Sito webgithub.com/IronLanguages/ironpython2

IronPython è un'implementazione del linguaggio di programmazione Python funziona sulle implementazioni del .NET Framework. Jim Hugunin ha creato il progetto ed ha contribuito attivamente ad esso fino alla versione 1.0 che è stata distribuita il 5 settembre 2006. Successivamente il progetto è stato sostenuto da un piccolo team di Microsoft che ha prodotto nel dicembre 2008 la versione 2.0 e lo ha portato avanti fino al rilascio della versione 2.7 Beta 1 nel novembre del 2010. Attualmente è gestito da un gruppo di volontari nel repository open-source CodePlex di Microsoft.

IronPython è scritto interamente in C#, soltanto una piccola parte del suo codice è generato automaticamente dal linguaggio Python. Importante dire che IronPython è sostenuto dal DLR ovvero il Dynamic Language Runtime, ed ha una biblioteca che gira in Common Language Infrastructure che fornisce la tipizzazione dinamica e la spedizione del metodo dinamico. La DLR è parte del Framework .NET ed è anche una parte del tronco build di Mono. Il DLR può anche essere utilizzato come una libreria di implementazioni. L'idea alla base dei linguaggi Iron* era di avere un ambiente di scripting per creare applicazioni personalizzabili via script, o per creare dei DSL interni.

VersioniModifica

La versione 2.0, distribuita a dicembre 2008, e aggiornata 2.0.3 il 23 ottobre 2009, si rivolge CPython 2,5. IronPython 2.0.3 è compatibile fino al Framework.NET 3.0.

La versione 2.6, distribuita l'11 dicembre 2009 e aggiornato il 12 aprile 2010, si rivolge soltanto al CPython 2.6. Mentre la versione di IronPython 2.6.1 è compatibile a livello binario solo con Framework.NET 4.0. Però IronPython 2.6.1 deve essere compilato dai sorgenti per funzionare su Framework.NET 3.0. Iron Python 2.6.2, distribuita a metà ottobre 2010, anch'essa è compatibile a livello binario ma con entrambi Framework.NET 3.0 e Framework.NET 4.0.

La 2.7 è stata distribuita a metà marzo 2011 e si rivolge CPython 2.7., anche la 2.7.1 è stata distribuita il 21 ottobre 2011 e si rivolge anch'essa a CPython 2.7..

Quest'ultima versione 2.7.2.1 è stata distribuita il 13 marzo 2012, ed ha il supporto per le librerie in formato zip e gli eseguibili compilati.

SilverlightModifica

IronPython, supportato in Silverlight, può essere utilizzato come un motore di scripting nel browser proprio come JavaScript. Gli script IronPython, vengono passati come un semplice script in JavaScript, ecco come: <script> -tag. In più è anche possibile modificarne il markup XAML.

Questa tecnologia è chiamata Gestalt.

//DLR initiation script.
<script src="http://gestalt.ironpython.net/dlr-latest.js" type="text/javascript"></script>

//Client-side script passed to IronPython and Silverlight.
<script type="text/python">
    window.Alert("Hello from Python")
</script>

Lo stesso vale per IronRuby

LicenzeModifica

Fino alla versione 0.6 IronPython è stato distribuito sotto la Licenza Creative Commons, in seguito nel mese di agosto del 2004, IronPython è stato assorbito da Microsoft quindi è cambiata licenza. Con la versione 2.0 alpha la licenza è stata ancora una volta cambiata. Le ultime versioni sono state distribuite sotto licenza Apache 2.0.

ReferenzeModifica