Microsoft is working on a phased approach to enhancing its support for dynamic languages on the company’s .Net platform. Jim Hugunin, creator of the IronPython language and a development leader on Microsoft’s CLR (Common Language Runtime) team, told eWEEK that Microsoft is working to help usher in support for dynamic languages on top of the CLR in a variety of levels or phases.
That’s taken from TFA, but it really cries out for an edit.
How are we supposed to take eWeek seriously when they slice Guido out like that?
And fail to understand the difference between a language and an implementation.
Anyway though…
This is actually fairly exciting to see. .Net 1.0-now has basically been: Look, you can use your C++ code and build on in a decent language! However, decent language meant C# or something else static and object oriented.
Now we’re seeing dynamic languages, and functional languages (still object oriented, I think that’s an absolute requirement for .net compatibility). So now you can build your application in Python/Ruby and C# for the more intricate parts or the parts that need the most raw speed. You could even go all the way to writing it in C++.
Of course, Python programmers have been able to mix Python with C for a long time. But let’s be honest: Unless you’re a good C programmer who’s quite familiar with Python you’re not in for a treat there. That doesn’t mean the feature is useless, it just limits it to a smaller group of python programmers. And it also allows problems associated with C development to crawl into your, largely, Python program.
So we’ve gone from .Net:
C#, with a dumbified version for dummies called VB.Net. Plus you can combine it with your old C++ code! A platform for moving on…
To .Net:
C#, with dynamic languages such as Python. A platform to start new projects in…
That’s my highly editorialized take.
Unfortuantely the article was short on details, I would love to know what they mean to add. I would like to develop a specialized language using .NET.
http://hlvm.org/ (High-Level Virtual Machine) is an open-source library that is adding dynamic language support to http://llvm.org/ (Low-Level Virtual Machine) which, in turn, is open-source and backed by Apple.
Hang on people we may be on for an interesting showdown yet!
The most likely story is that LLVM is providing the garbage collection which is advocated in Object-C 2.0.
Does anyone know if IronPython works in Mono? I’m a long-time Python developer, and the potential for performance improvements is intruiging…
– chrish
Does anyone know if IronPython works in Mono? I’m a long-time Python developer, and the potential for performance improvements is intruiging…
IronPython targets .NET and Mono, and has worked with previous releases of Mono out of the box. I don’t know about the respective current releases, but it’s worth a try.