IronPython
| IronPython linguaggio di programmazione | |
|---|---|
| Autore | Jim Hugunin |
| Data di origine | 5 settembre 2006 |
| Ultima versione | 2.7.5 |
| Utilizzo | Scripting |
| Paradigmi | Procedurale, Funzionale, Oggetti |
| Tipizzazione | Forte |
| Implementazione di riferimento | |
| Sistema operativo | Windows, Linux |
| Lingua | inglese |
| Licenza | Apache License 2.0 |
| Sito web | github.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.
Versioni[modifica | modifica wikitesto]
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.
Silverlight[modifica | modifica wikitesto]
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
Licenze[modifica | modifica wikitesto]
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.
Referenze[modifica | modifica wikitesto]
- Jim Hugunin's blog IronPython, su blogs.msdn.com.
- Microsoft cuts loose IronPython, su theregister.co.uk.
- http://ironpython.codeplex.com Differenze tra versioni.
- http://ironpython.codeplex.com Performance Report