Above is a small test running IronPython inside a browser.
I have had a chance to download the Silverlight demos and the latest release of IronPython (2.0 Alpha) which uses the new Microsoft.Scripting libraries (aka Dynamic Language Runtime - DLR).
WOW!
This stuff rocks!
My impressions so far:
- the CLR is the real deal, not some tiny subset
- the download is 4.24 MB and is easy to install
- they have true dynamic language support in the browser
- it is fast – very fast
- Microsoft.Scripting libraries are awesome with support for closures, complex numbers, extended precision, etc
- here is a good overview of what was released
- Miguel de Icaza has some interesting observations
Microsoft is releasing several languages for the DLR including Python, Ruby, VbScript, and JavaScript. Apparently, Scott Guthrie presented a chess demo which could be toggled between an interpreted JavaScript AI and a C# JavaScript.Net version. The results:
- JavaScript 651 nodes/second
- JavaScript.Net 1,209,152 nodes/second
In other words, nearly 2000 times as fast - and that is with dynamically compiled code.
This is very impressive technology that is certain to impact how applications are built and delivered. I think that it will mark the beginning of the broad acceptance of Rich Internet Applications in the marketplace – and this will probably benefit Adobe as well.
My congratulations to the folks at Microsoft for some excellent software engineering.

It definitely ups the ante. If nothing else, that’s a good thing.
C:\Linux?
Comment by Patrick Logan — May 1, 2007 @ 9:24 pm
Just fyi — the Chess engine comparison is between browser JavaScript and C#…as far as I know the DLR guys haven’t timed the JavaScript engine in their .NET implementation…yet. It will be tons faster than browser JavaScript, but probably not quite as fast as C#.
Comment by John Gossman — May 1, 2007 @ 11:33 pm
Patrick,
I don’t know what MS plans for Linux. But the Flash version of Vista Smalltalk/Lisp does run on Linux.
Comment by pfisk — May 2, 2007 @ 12:49 am
John,
Thanks for that clarification.
C# is *incredibly* fast; the dynamic code is just *very* fast.
Comment by pfisk — May 2, 2007 @ 12:53 am
[...] 21st Century SmallTalk: IronPython 2.0 in a browser, performance and dynamic fun. [...]
Pingback by More DLR | nickhodge.com | mungenet — May 2, 2007 @ 2:15 am
Would you be interested in coming out to Microsoft for our Compiler Dev Lab at the end of this month? Email me at (jflam) at you know where if you want to talk some more. Our team (DLR) is putting on the dev lab and it would be great to have you there.
Comment by John Lam — May 3, 2007 @ 6:20 am
Yes! Go to the Microsoft Compiler Dev Lab and finally build a lisp for .net!
Comment by Anon — May 3, 2007 @ 11:17 am
John,
Thank you very much.
Unfortunately, I have too many commitments here at the moment for this to be possible.
However, I would love to attend a future session whenever it is possible.
– Peter
Comment by pfisk — May 3, 2007 @ 4:30 pm
Anon,
I am certain that Microsoft knows how to create Lisp on .Net.
IIRC, some of the CLR team used to work for Lucid which was one of the premier Lisp companies of the 1980’s.
– Peter
Comment by pfisk — May 3, 2007 @ 4:32 pm
You should take John Lam’s offer up for all our sake. I personally enjoyed talking at mix07 to this cool dude.
Comment by david — May 4, 2007 @ 10:54 pm