Welcome to MSDN Blogs Sign in | Join | Help

Dynamic Languages and the Common Language Runtime (CLR)

Hi!  I’ve just finished my second week working at Microsoft. Now that I'm starting to settle in I can get to the fun work with the CLR and dynamic languages.  I’ve been fascinated by the power of programming languages and tools for many years, and I’ve built a number of tools in this space.  I’m the creator of Jython, a co-designer of AspectJ and the original lead for Numeric Python.  You can read more about these projects starting from my personal web site.

Over the past year, I’ve become a reluctant convert to the CLR.  My initial plan was to do a little work and then write a short pithy article called, "Why .NET is a terrible platform for dynamic languages". My plans changed when I found the CLR to be an excellent target for the highly dynamic Python language. Since then I've spent much of my spare time working on the development of IronPython.  The more time that I’ve spent with the CLR, the more excited I’ve become about its potential.  With my new position at Microsoft I have the pleasure of continuing to explore and extend this platform full-time surrounded by smart people who have a deep understanding of the CLR.

I announced the first public release of IronPython-0.6 during my talk at OSCon a couple of weeks ago.  The conference and the talk were great fun.  Before my talk at OSCon, IronPython had only ever run on my personal laptop under Windows XP.  Before my talk was even finished, Edd Dumbill had installed and run it successfully under Linux.  An hour later out in the halls I met several more people who had IronPython running successfully on Linux as well as two people who were running it under Mac OS X.  None of these people needed to make any modifications or even do a recompile to get it working on their systems.  Everyone could run exactly the same binary that I’d built using Visual Studio .Net on Win XP.  Of course, this is exactly how the CLR is supposed to work; nevertheless, it’s always a pleasant surprise when things work as advertised.

I'd like to thank all the people who've given me such positive feedback both about my IronPython announcement and my move to MS. 

This blog is going to give me an easy place to talk about technical issues with implementing languages for the CLR and about philosophical issues around how and where dynamic languages are most useful.  I’ve just started my new job and still have to work out my schedule and commitments, so don’t expect any comments from me about a next release for a little while.  Coming soon will be an entry similar to one of the live demos I gave during OSCon to show a little bit more about how IronPython can interact with interesting CLR libraries.

Published Friday, August 13, 2004 7:02 PM by hugunin

Comments

# re: Dynamic Languages and the Common Language Runtime (CLR)

Can't wait to see your blog:)
Friday, August 13, 2004 4:41 PM by Junfeng Zhang

# Welcome to Jim Hugunin!

Saturday, August 14, 2004 4:01 AM by Jonathan Hardwick

# re: Dynamic Languages and the Common Language Runtime (CLR)

Great to see you blogging here. Looking forward to your posts!
Saturday, August 14, 2004 7:15 AM by Robert Hurlbut

# static type inference

Hi, I just wanted to ask you a question regarding the future development of ironpython:
Right now there's a project for building a static type inference for Python called Starkiller, which is supposed to be released soon.
I'd like to know if you are considering implementing this type of technology that could, at least theoretically, improve dynamic languages performance up to near c speed.

Do you think is posible that some day, dynamic languages will be as fast as compiled ones?
Tuesday, August 17, 2004 10:31 PM by Luis

# re: Dynamic Languages and the Common Language Runtime (CLR)

It’s an exciting place to be, at the center of the CLR.
Wednesday, August 18, 2004 6:10 AM by paul

# re: Dynamic Languages and the Common Language Runtime (CLR)

Congratulation for this new job, good continuation in your research.

Information is relayed French-speaking side;)

http://blogs.developpeur.org/redo/archive/2004/08/18/2313.aspx

Rédo
Le .NET, Que du Bonheur !!!
MVP ASP.NET
Wednesday, August 18, 2004 7:57 AM by Redo

# re: Dynamic Languages and the Common Language Runtime (CLR)

Man, glad to see this kind of activity and honesty! Just hope that others could put their religious zeal aside and work with others... Nice blog, keep it on!

Wednesday, August 18, 2004 1:14 PM by Guy Provost

# re: Dynamic Languages and the Common Language Runtime (CLR)

It's been a week. No new posts? :) Will IronPython have a C# style GUI builder? That would be a product I'd buy it without hesitation.
Saturday, August 21, 2004 10:04 PM by Robert Oschler

# re: Dynamic Languages and the Common Language Runtime (CLR)

Slightly off-topic? Is there a UseNet or phpBB forum for the discussion of IronPython? Perhaps a listserv mailing list? I don't want to abuse the comment system with discussion questions.

If there isn't I'd be glad to set up and host a phpBB forum for it. I can be reached by sending mail to my first name at the web site domain name in my comment URL.

Thanks.
Monday, August 23, 2004 3:40 PM by Robert Oschler

# re: Dynamic Languages and the Common Language Runtime (CLR)

Thanks for the support.

I've just put up my promised second post. I'm aiming for one post per week. We'll see how that goes.

There is a mailing list that you should be able to easily find off of ironpython.com. If it's too hard to find, let me know and I can give you a specific URL.
Monday, August 23, 2004 6:10 PM by Jim Hugunin

# re: static type inference

I have high hopes for the combination of static type inference and dynamic languages in the future. I talked about this 6 years ago at a Python conference in San Jose. The possible performance wins are huge. See the slides here - http://www.jython.org/jpython-talk-1.ppt - the interesting section starts with "Compiler Design".

Another less talked benefit of static analysis is the checking performed by a tool like PyChecker which does some static analysis to find bugs in Python programs.
Monday, August 23, 2004 6:18 PM by Jim Hugunin

# re: Dynamic Languages and the Common Language Runtime (CLR)

Jim,

I found it with no problem. Just subscribed, thanks! BTW, the URL for my posts is coming up "http://http/" because the first time I posted I had a mistake in the Url field (I had 3 t's in "htttp").
Tuesday, August 24, 2004 5:03 AM by Robert Oschler

# Welcome Jim Hugunin

Thursday, September 09, 2004 12:15 PM by Pete's WebLog

# Jim Hugunin's Thinking Dynamic : Dynamic Languages and the Common Language Runtime (CLR)

As I work to absorb the raft of recent announcements (mostly around MIX07), I discovered the DLR - or

Friday, May 18, 2007 12:30 AM by Contagious Curiosity

# Dynamic Language Runtime

The story of the Dynamic Language Runtime starts in early 2004. Jim Hugunin then decided to spend few

Wednesday, December 19, 2007 5:02 PM by Martin Maly
New Comments to this post are disabled
 
Page view tracker