If CLI was the ECMA standard baked into browsers instead of ECMAScript we'd have a much more flexible web.
Why not indeed. If there is going to be a push to have broader language support on the web, let’s jump over the problem of picking the right VM and Garbage collector. Let’s skip shared agreement on compatibilities between Microsoft’s implementation and Miguel’s.
Let’s go straight to Native Client.
I’ve talked about Native Client before. Here’s the official summary:
Native Client is an open-source technology for running native code in web applications, with the goal of maintaining the browser neutrality, OS portability, and safety that people expect from web apps. We've released this project at an early stage to get feedback from the open-source community. We believe that Native Client technology will help web developers to create richer and more dynamic browser-based applications.
Native Client runs on 32-bit x86 systems that use Windows, Vista, Mac OS X, or Linux. Some ARM and x86-64 support is implemented in the source base, and we hope to make it available for application developers later this year.
Instead of worrying about Mono or Microsoft worrying about getting the sandbox right for the browser, let’s solve it once.
Then I can target the C# with the Mono CLI.
Or IronPython with the Microsoft CLR.
Or Ruby with JRuby. Or just MRI, if I want.
I’m certainly waving my hands over a lot of technical details. I know.
Perhaps just not radical enough.