Welcome to a new age of .NET. With the Customer Technology Preview (CTP) of Silverlight™ 1.1, the first commercial cross-platform Microsoft® .NET™ components became available. Furthermore, my tongue is no longer officially tied. The cat is out of the bag, and thus I can now clue you all in on what I’ve been doing in the last year.
Since there’s already been quite a bit of posting on the subject of Silverlight, I figured I’d fill in some of the details about its composition and some of the nomenclature, since, even within Microsoft, it’s not completely obvious what’s in the package at first glance.
|WPF/E||Jolt1||Windows Presentation Foundation / Everywhere is the browser plug-in variant of its bigger brother in Windows. It is XAML-based presentation engine.|
|Windows Media codecs||These allow for high speed video streaming inside a Silverlight solution.|
|CoreCLR||Telesto2||The core execution engine and platform adaptation components of .NET. These are the only parts of the managed support that are native; the rest are all managed libraries. Officially, the CoreCLR project is also responsible for the Base Class Libraries (BCL), which has been reduced for both size and portability reasons.|
|UIFX||The standard framework libraries, similarly reduced from the Desktop for both size and portability reasons.|
|.NET Language Runtimes||Managed libraries to support C# and VB.NET|
|DLR||Dynamic Language Runtime support libraries|
The “level-1” components of Silverlight are entirely to provide a managed programming model for WPF/E, as an alternative to its built-in JScript model. The part of Silverlight I’ve been working on is the CoreCLR component, focusing on Mac OS X integration, but have been banding together with my Mac counterparts on the other related teams (mostly WPF/E, with a little bit of UIFX) to make sure the collective Silverlight story on the Mac is a good one. If you have feedback for us, head on over to the Silverlight.net forums, specifically the Programming with .NET forum, and let us know. It may take more than one of us to give a full answer (for example, I know much more about how we handle native exceptions on the Mac than about what XAML you’d need to use for a particular operation), but we’ll help if we can.
1In the era before marketing took over code-name generation, we could have tributes to fine beverage products. However, since code names regularly leak out of Microsoft, and out of worry that we will get stuck with a trademark lawsuit for something that isn’t the name we’re ultimately going to use, marketing now comes up with names, presumably with some kind of trademark search ahead of time to verify that we’re not going to run afoul of someone else’s.
2No, “Silverlight” isn’t the “the gleam of yonder (Telesto) moon,” but I figured it sounded good.