IronPython, qui peut être considéré comme le rétroacronyme de Implementation Running On .NET[2] ou de It Runs On .NET[3], est une implémentation du langage Python, visant .NET et Mono, créée par Jim Hugunin. La version 1.0 est sortie le 5 septembre 2006.

IronPython
Description de l'image Ironpython-logo.png.

Informations
Développé par Jim Hugunin
Première version 5 septembre 2006Voir et modifier les données sur Wikidata
Dernière version 3.4.2 (20 décembre 2024)[1]Voir et modifier les données sur Wikidata
Dépôt github.com/IronLanguages/ironpython3Voir et modifier les données sur Wikidata
Écrit en C# et PythonVoir et modifier les données sur Wikidata
Environnement .NET, Mono
Type Interprète
Implémentation d'un langage de programmation (en)Voir et modifier les données sur Wikidata
Licence Licence Apache 2.0Voir et modifier les données sur Wikidata
Site web ironpython.netVoir et modifier les données sur Wikidata

IronPython est écrit entièrement en C#. Il est disponible comme partie de l'initiative Shared source de Microsoft. Bien qu'à l'origine placé sous la licence Common Public License, il garde une partie de son héritage, et son code source semble « plus accessible » que d'autres objets placés sous la Shared Source initiative. Les auteurs affirment que la licence, bien que non examinée par l'Open Source Initiative, est conforme à leur définition de l'open source.

Version

modifier

La version 1.1 est compatible CPython 2.4.4.

La version 2.0 est compatible CPython 2.5 et peut s'exécuter sur la machine virtuelle de Microsoft grâce à la surcouche pour langages interprétés qui permet de supporter d'autres langages que ceux supportés par défaut par le système d'exploitation Windows de Microsoft.

Le portage de Python sous .Net permet de bénéficier des avantages du langage Python (syntaxe, accès aux bibliothèques Python) et du Framework .NET qui bénéficie du travail de Microsoft fait sur les MFC.

Silverlight

modifier

IronPython est pris en charge sur Silverlight (qui est obsolète par Microsoft et a déjà perdu la prise en charge de la plupart des navigateurs Web, à l'exception d'Internet Explorer 11 qui mettra fin à sa prise en charge en octobre 2021)[4].

Il peut être utilisé comme moteur de script dans le navigateur, tout comme le moteur JavaScript[5]. Les scripts IronPython sont transmis comme de simples scripts JavaScript côté client dans les balises <script>. Il est alors également possible de modifier le balisage XAML intégré.

// DLR initialization 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>

La technologie sous-jacente s'appelle la Gestalt.

Outils

modifier

Plusieurs environnements supportent IronPython : Microsoft .NET et Mono.

  • Sous Microsoft .NET, les outils Visual Studio supportent IronPython depuis la version 5 par installation de Visual Studio 2005 SDK version 4.0. IronPython Studio [1], basé sur Visual Studio 2008 Shell Runtime, permet d'avoir un IDE gratuit.
  • Sous Linux, le projet Mono propose une image VMware du système d'exploitation SuSE avec l'IDE MonoDevelop qui supporte Mono 1.1.16.1 et IronPython 1.0 RC2.
  • Eclipse4sl [2]
  • IronPython IDE [3]

IronPython fonctionne avec Silverlight et Manifold GIS System

Références et notes

modifier
  1. « Release 3.4.2 », 20 décembre 2024 (consulté le 24 décembre 2024)
  2. Se référer à la présentation vidéo de l'auteur à 15 min 30 s
  3. « Why are many ports of languages to .net prefixed with ’Iron’? », sur Stack Overflow (consulté le 16 septembre 2020).
  4. Zed Shaw, Learn Python the hard way, Addison-Wesley Professional, 2017 (ISBN 978-0134692883, lire en ligne)
  5. « Write browser applications in Python » [archive du 17 mars 2013], sur IronPython.net

Liens externes

modifier

📚 Artikel Terkait di Wikipedia

Python (langage)

possible de créer des applications Silverlight en Python sur la plateforme IronPython. Guido van Rossum est le principal auteur de Python, un langage de programmation

Dynamic Language Runtime

versions de Python et Ruby fonctionnant sur le DLR sont appelées IronPython et IronRuby. IronPython et IronRuby sont sous licence Apache 2.0. D'autres implémentations

Global interpreter lock

2008] (consulté le 15 août 2014) « IronPython at python.org », python.org (consulté le 4 avril 2011) : « IronPython has no GIL and multi-threaded code

CPython

écrit en RPython (Python restrictif, restricted Python) et traduit en C IronPython, écrit en C# « Release 3.14.6 », 10 juin 2026 (consulté le 11 juin 2026)

SharpDevelop

Gestion des principaux langages .NET (C#, VB.NET, TypeScript, F#, Boo, IronPython, IronRuby) Intégration de nUnit pour les tests unitaires, de couverture

Liste des programmes de Microsoft

Service) BASICA Bosque Citus Data CLR Profiler GitHub GW-BASIC IronRuby IronPython JScript Microsoft Liquid Motion Microsoft BASIC, également sous licence

IronScheme

sur la Dynamic Language Runtime. D'autres langages ont été implémentés IronPython, IronRuby. Ce projet est la suite du Projet IronLisp. (en) Site web du

Microsoft Visual Studio Express

Workbook) certaines options de débogage la création de services Windows IronPython La version 2008 Express, par rapport à la version 2005, supporte : Cider