Breaking News: Future Version of .NET Framework to Run on the Mac
Breaking News: Microsoft is working on having a version of the framework that will run on the Mac! That's right -- Rory broke this story just the other day in his interview with Scott Guthrie.
First, a little bit of background, which although not secret has largely went unnoticed so far. Hopefully you've heard of WPF/E, which is a subset of WPF that runs in the brower, even Firefox and Safari. So far the first CTP is largely focused on the cool graphics capabilities and supporting media. But even in this first CTP the XAML can be programmed against on the client-side using JavaScript, even with Ajax. But its also already been discretely said that in the future WPF/E will also contain a small cross platform subset of the CLR. That will mean that we will also be able to use C# or VB on the client-side to program against WPF/E! And that will be true even in Firefox and Safari on the Mac -- and this is old news that simply hasn't been widely talked about.
Mike Harsh as early as March 23, 2006 said:
And Joe Stegman said this just last month:
To be clear, "WPF/E" is independent of the .NET Framework. In a future version, we'll support a small cross platform CLR based execution engine that will run on both Windows and Apple OS X (everything we do from a runtime perspective works on both Windows and Apple OS X). In general, our tools are dependent on Windows but with the current version of "WPF/E", you can develop using a text editor and deploy on any web server. When we support the small CLR, compiling/debugging will require Windows (and so will our designer tools) but running/deployment will still work cross platform.
And then Scott said this in the interview at the 9 minute mark:
Scott: And overtime we'll also support a managed programming language, uh framework, against WPF/E as well. So in addition to using JavaScript, you'll be able to use C#, uh
Rory: You mean, even for the other?
Scott: Yeah even for the Safari and Mac.
But what Scott said in this interview with Rory went beyond the small CLR for WPF/E in the browser. Instead Scott said that they were also looking at a version of this that would run outside of the browser, even on the Mac! Listen to this interview and its pretty clear that Scott was probably not intending to announce this until Mix. Rory was also quite suprised and wondered if he needed to remove this from the video. But Scott said he could keep it and acknowledged that this was probably the first time this was publicly talked about. Rory was of course very excited to be the one to get this scoop out of Scott. :)
So here's what Scott said in the interview at the 23:45 mark:
Rory: Is there any possibility of eventually having a framework that runs outside the browser?
Scott: Yea, yea, that's definitely something we're looking at is, uh, kind of what we call the in-browser experience and kind of the out-of-browser experience. And so that's something we'll talk more about at mix, uh
Rory: And that stuff's secret now? Cause I don't mean to bring up something that's secret.
Scott: No, no, well that's something, uh, that we haven't talked about publicly yet. But that's certainly a scenario we're thinking about.
Rory: Do I have to get that out of the video?
Scott: No, you can keep that.
Rory: I can keep that? Is this like the first time anyone's heard it?
Scott: Probably, yeah.
Just having the ability to use our favorite .NET language and a subset of the CLR inside the browser to target an incredibly rich graphics platform like WPF/E is huge to me, but if we're not even restricted to the browser -- wow! For instance, Keith Elder already has a post on his blog where he considers some of the possibilities, and that's just one person thinking out loud. Of course right now the first CTP is still very much cool graphics and media, but this is a very strategic start. Why? Because this is focusing on what isn't easily possible any other way, and its getting the big media players involved. And if the big media players use it then you can bet that everyone will be downloading the plugin just like they do now for Flash. Most users aren't going to care about the .NET part, but once its ubiquitous, then we will also be able to take advantage of it.
So there you go -- its just a matter of time before there will be a small CLR version of the .NET framework everywhere, with your favorite .NET language of course!