Tuesday, November 1, 2011

What is IronPython

Today, it's a special day to me. Today I am writing my 50th post and it's exactly after 2 years from the first day I started blogging. It's a great feeling.

So today I would write about IronPython. If you have not heard about IronPython before, don't be surprised. I am pretty sure you must have heard Python programming language before. If you have not, it's a open source high level programming language which is used by world's largest software companies to develop world's famous systems. Here is a list of systems that is developed using Python.
    List of Python software

So what is this IronPython? Actually IronPython is the .NET version of the Python language. For a .NET developer, developer has the advantage of developing aplications using IronPython and still having the full access to the .NET Framework. Which means you can work with IronPython and other .NET languages that you already know and by that you can use the right tool for every job.

The most important thing in IronPython is, it is a dynamic language, which means that it performs many tasks during run time, rather than compile time. And of course, using a dynamic language means that your code has the advantages of static languages, such as C#.

Dynamic languages are not new to the industry. It has been there for a very long time. Dynamic languages provides many advantages. One is it has the ability to enter several statements and execute them immediately to obtain feedback. Another thing is using a dynamic language, it's easier to refactor the code and modify the code, because you don’t have to change static definitions throughout your code. You also have the possibility to call functions which you haven’t implemented yet and add an implementation later in the code when it’s needed.

In addition to the great features that Python provides, IronPython provides a few of its own. I would list some of them down here.
  • Full access to the .NET Framework.
  • Full extensibility using the .NET Framework.
  • Complete source code available.
  • Usability within Silverlight applications.
IronPython also runs on Mono, cross platform open source .NET development framework, enables IronPython to be used on Linux, Mac OS, and BSD systems.

But IronPython has few differences from the CPython (Python) implementation that everyone else uses. One major thing is IronPython is a managed application, CPython is written in C.

And that is some basic but important things that we all should know before writing applications using IronPython.

IronPython is not included in the .NET Framework. So to use it, you will have to install it.

To download and for more information, visit IronPython web site.

When you have installed IronPython in your machine, you must wonder that whether it has added some new project templates to the Visual Studio. It will not and you can find the Python Tools for Visual Studio from the following link.

So enjoy writing applications using IronPython. Appreciate your feedback.

Happy Coding.

Regards,
Jaliya