Slashdot Mirror


Microsoft Common Language Runtime To Be Cross-Platform

axlrosen alerts us to a Microsoft sleeper announcement from Mix07: a version of its Common Language Runtime will be available cross-platform. The Core CLR shows up as part of the Silverlight SDK that Redmond is open sourcing. From the blog posting: "The biggest Mix '07 announcement made on opening day of this week's show was one that Microsoft didn't call out in any of its own press releases: Microsoft is making a version of its Common Language Runtime available cross-platform. The CLR is the heart of Microsoft's .Net Framework programming model. So, by association, the .Net Framework isn't just for Windows any more."

14 of 308 comments (clear)

  1. Mono? by morgan_greywolf · · Score: 2, Informative

    Wasn't .NET already cross-platform with the introduction of Mono?

    1. Re:Mono? by Anonymous Coward · · Score: 1, Informative

      There is not just MONO, but also ROTOR.
      http://www.ondotnet.com/pub/a/dotnet/2002/03/27/ar chtour.html

      Pitty neither of those gives the true cross-platform we need for the C#.net Platform.
      ROTOR is just a BSD port of the C#.net virtual machine (no JIT compiler, no full framework libraries).
      MONO is just a rewrite of the C#.net virtual machine + partial framework libaries (no win32 compatibility layer below).

      In the end, the C#.net Platform will always be an NT-only solution.
      Maybe REACTOS will be the solution to run the full Platform without MS licences... some day.

    2. Re:Mono? by Anonymous Coward · · Score: 1, Informative

      The permissive license does not have a viral clause. The MSPL is similar to a BSD style license. The community license does contain a viral license: comm license.

  2. Parent not trolling by metamatic · · Score: 5, Informative

    That's exactly what Microsoft did with ActiveX. They pushed ActiveX as cross-platform, delivering an ActiveX SDK for the Mac and supporting ActiveX components in IE.

    Then after a while, they dropped ActiveX support, saying it was too much effort to make it work on OS X.

    Then after a while longer, they dropped IE too.

    Same with WMV. Seen Windows Media Player for the Mac? No? That's because they dropped it a while back, and killed all support for DRM-protected Windows Media on the Mac. (Instead they suggest that people use a third party QuickTime plugin that only handles unprotected WMV.)

    Jeez, lots of Microsoft fanboys or astroturfers moderating today.

    --
    GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    1. Re:Parent not trolling by Richard_at_work · · Score: 2, Informative

      Same with WMV. Seen Windows Media Player for the Mac? No? That's because they dropped it a while back, and killed all support for DRM-protected Windows Media on the Mac. (Instead they suggest that people use a third party QuickTime plugin that only handles unprotected WMV.)
      Im pretty sure that Windows Media Player for Mac never handled protected WMV files at all (I am prepared to stand correct though), so there was nothing lost with the move to Flip4Mac.
  3. Troll, eh? by AKAImBatman · · Score: 2, Informative
    I wish I could say I was surprised. :-/

    From TFA:

    The Core CLR will include the garbbage collection, type system, generics and many of the other key features that are part of the CLR on the desktop. It won't include COM interop support and other features "that you don't need inside a browser," the Microsoft execs say.

    Which is to say that it's being ported just for Silverlight. Silverlight depends on XAML. (Originally expanded to Extensible Avalon Markup Language.) XAML is the serialized form of WPF (Windows Presentation Foundation) vector drawing commands. WPF is based around .NET 3.0. Thus XAML consists of references to the .NET objects. That's why the CLR is required in pared-down form.

    Microsoft is literally porting a chunk of Windows Vista to provide gee-whiz effects. Thus the use of Silverlight will always tie you back to Microsoft. Embrace, extend, extinguish.

    Now where are the DOM 2 Events, Microsoft?
  4. Stop the celebration by PineHall · · Score: 4, Informative
    From the blog:

    Microsoft is not opening up the source code to the Core CLR. It is opening the code to the DLR by posting it to the Microsoft CodePlex source-code repository under a Shared Source Permissive license.
  5. Re:Not the whole CLR... by Chester+K · · Score: 3, Informative

    Unfortunately, only the "Core CLR" will be ported, and only to the Mac OS (probably due in part to MS Office for Mac), not Linux, and not even older (PPC) Macs. I also seriously doubt there will be much in the way of developer tools for the(se) other platform(s).

    A subset of the CLR similar to the Compact Framework is included in Silverlight; with a much simpler security model. It's not a replacement for the full .NET Framework by any stretch. There have been whispers about a Linux version of Silverlight as well (Flash has one, and Microsoft is trying to provide a superset of the Flash/Flex featureset).

    As for developer tools, while it's not exactly developing on a Mac, per se, you can use Visual Studio to do remote debugging on CLR code running in a Silverlight app on a Mac client.

    --

    NO CARRIER
  6. Re:Me? Cynical? Never. by AKAImBatman · · Score: 5, Informative

    Dude. CANVAS. Hello?

    Microsoft pulled the wool over your eyes. They were showing you a DOM app that needed to modify the rendering tree in order to make a move. This is similar to a 3D Scene Graph, but without the hardware acceleration. When Microsoft showed you the Silverlight app, they were showing you a hardware-accelerated drawing program. The very purpose for which Canvas was created.

    As for the AI speed (assuming that the performance issues weren't entirely being caused by the DOM manipulations), Silverlight still uses Javascript for scripting. If it can run so much faster in their CLR scripting why don't they use their new Javascript engine in Internet Explorer?

    In case you think I'm joking, that is exactly what Mozilla is doing with their new Tamarin engine. The new engine is faster and more feature rich, ergo it's being integrated into the browser platform. To make matters even more interesting, Mozilla and Adobe are sharing the development of the engine, so that they can both use it. Mozilla in the browser, Adobe in Flash.

    I'm sorry. Microsoft is pulling a fast one on you. There is no need for Silverlight other than to lock you into Microsoft technology.

  7. Re:MOD PARENT UP by Anonymous Coward · · Score: 5, Informative

    Unfortunately neither of them actually knows what they are talking about.

    For starters, a.k.a. why Chester K doesn't know what he's talking about, at MIX they showed JavaScript in the browser against C# in Silverlight v1.1 - not C# in JavaScript. The speed comparisons are correct.

    why AKAIAmBatman is wrong is because this is absolutely not about the performance of rendering. The setup here is that you have one app, with whatever that infrastructure is running in, delegating to the player code. The player code being C#, JavaScript, or a human. This is how you typically do chess games and no surprise it's how they did it here. Therefore the JavaScript is doing no rendering of any kind. That is unless the game was implemented using JS, but even if it was it doesn't matter. The idea is to give each player 1 second to calculate and they give you the best move and how many calculations done. This is merely a measure of raw computational power: calls, either some array lookups, and simple math (potentially bitwise arithmetic, potentially not depending upon the implementation). Finally they used the same algorithm just implemented in the two different languages.

    And because Chester K was misinformed this populates down into AKAIAmBatman's comments where things go wrong. The Tamarin engine has nothing on this. ActionScript has nothing on this. What we're talking about is approaching near native code speed in the browser. JavaScript, no matter what, just isn't going to get there and still be JavaScript. It's way too dynamic. Maybe you can do some whole program analysis but even that is going to be tough. It seems the goal for Tamarin is only a 10x improvement (http://simonwillison.net/2006/Nov/9/tamarin/) if you look at the source code. That means that C# will still be 1000 times faster than the improved Tamarin engine. It's just a fact - JavaScript sucks.

  8. Rotor != .NET, Mono != Rotor by Mr.+McD · · Score: 2, Informative
    There's a lot of mis-information being thrown around on this forum so I thought I'd try clear some things up
    • Rotor IS NOT an open source implementation of .NET. It is a reference implementation of the CLR as defined by the ECMA. It does not include the .NET stack. You cannot run a .NET application on top of Rotor under Mac OS X or any other OS
    • Rotor has no GUI implementaion
    • Mono IS NOT based on Rotor but Mono is a clean-room implementation of the CLR and the .NET APIs, plus some other very cool APIs that don't exist in .NET.
    • Mono is not a Microsoft sanctioned implementation.
    • Mono is offered under a license that is compatible with Linux.
    • Mono is cool, .NET is just Ok. ;)


    Ryan-
  9. Re:"Cross platform" by prencher · · Score: 3, Informative

    FUD more?

    The CLR shipped with silverlight runtime is supported in IE, Firefox and Safari on windows and mac. It contains all CLR 2.0 features, and has all of the silverlight libraries. It does however only contain a subset of the BCL (Base Class Libraries), but that is the same for all the users without .NET that downloads the silverlight runtime, be it on mac or windows. You are a fool if you believe that the majority of windows users have any version of .NET installed, let alone 2.0, even today.

  10. FUD by ZxCv · · Score: 2, Informative

    At best you could implement .NET with Mono but there was no guarantee that a change by MS would not negate the hard work of the Mono team.

    Really? How so? What kind of change from MS would make Mono stop working? In the absolute worst possible case, I'm sure Microsoft could hamper future development of Mono, but that takes nothing away from any apps that are currently running just fine on Mono.

    Speaking on ~4 years of experience, .NET does a fine job at being cross platform, contrary to what everyone around here likes to believe. I've got everything from high-volume mail servers to data collection and processing apps to billing systems, all written in C#, running on Windows Server 2003, Linux, and Mac OS X. It is obviously not perfect at being cross-platform, but IMHO, it makes up for that in plenty of other areas.

    --

    Perl - $Just @when->$you ${thought} s/yn/tax/ &couldn\'t %get $worse;
  11. Re:"Cross platform" by ClosedSource · · Score: 2, Informative

    No. Sun sued Java out of existence on Windows.