IronPython

Overview:

  • IronPython is an implementation of the Python Programming language written for the .net framework.
  • IronPython scripts can make use of the .net platform and the .net libraries.
  • IronPython is built on top of the Dynamic Language Runtime (DLR) of the .net platform.
  • The DLR itself is built on top of the Common Language Runtime (CLR) of the .net platform.
  • IronPython for the most part is written using the C# language.

IronPython, CPython and Python.NET:

  • While CPython is the reference implementation of the Python Programming Language offered by the Python Software Foundation, IronPython is the mplementation of the Python Programming Language developed for .net framework.
  • Both the language implementations tend to differ in certain functionalities. Similarly, the releases of the CPython-reference implementation and the IronPython implementation differ to a larger extent the later catching up with the former.
  • Also the IronPython implementation does not have the bottleneck of Global Interpreter Lock (GIL), which prevents a Python Program running under CPython to exploit the presence multiple cores in the system by using multiple threads.
  • The libraries written using C for CPython like numpy are not compatible with IronPython.
  • For this reason, if a Python Script is written to make use of the .net platform and also is required to use some of the CPython libraries written in C like numpy, the choice is to go for a solution like Python for .NET (pythonnet) rather than using IronPython.
  • Python for .NET package does not implement Python language on top of CLR. Instead, Python for .NET integrates CPython engine with .net runtime.

IronPython Developement:

  • Being developed as a open source project IronPython is released under Apache License.
  • Source code IronPython is available at https://github.com/IronLanguages

 

 


Copyright 2019 © pythontic.com