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."
Yes, kinda, partially.
.NET Framework is, like System.Windows.Forms, and Microsoft.*.
My question is more like --
Will this aid Mono development? Is Mono still necessary? What about the Windows specific API's? A lot in
Beware: In C++, your friends can see your privates!
The summary got my hopes up. I like C# and .NET quite a lot, but I also like Mac OS and Linux. I've been trying out Mono and Monodevelop (as well as some Xcode plugins for C#/Mono), but they're really not a good match for VS2k5 yet. (I'm hoping that "yet" comes true and doesn't turn into "ever".)
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).
Sad, really. Office and VS are the only two decent Microsoft products, and they refuse to port either of them to a decent platform (aside from the tiny fragment of Office that makes it to the Mac).
After playing with C# for a few months, the answer I came up with is that C# happened after Java and (I would hope) improve upon Java in some ways. But I stopped using it because of a few reasons. The first of which was the cross platform problem. While Java wasn't open source at the time, it worked on a lot of different platforms. 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. The second reasons is that MS has always been long on promises about technology and short on execution. I'm content to let some else be the guinea pig.
Well, there's spam egg sausage and spam, that's not got much spam in it.
That sounds familiar. http://spetskod.blogspot.com/2007/04/learn-to-love -net.html
Sam ty sig.
"Silverlight will plug into Internet Explorer, Mozilla and Safari browsers, meaning the slimmed-down CLR will run on these platforms, as well."
When a browser became a platform I'm not sure, when they started handing out the Web 2.0 Kool-Aid I suppose. It doesn't mention Linux so I reckon they mean Firefox on Windows.
My little Linux and tech blog
I was at a presentation of XNA and the presenter referred to it as "cross platform" because it runs on both X-Box 360 and Windows XP (and now Vista). Let's not allow Microsoft to dilute the meaning of the terms "cross platform" and "Open Source".
The Core is not really that much. It is just enough to say they are Cross Platform like Java, but really not enough to allow a dev to run .Net code compiled on Windows on a linux or Mac. Mono is actually alot further along, and actually WANTS the CLR to run Cross Platform.
Scott Carr
Mono really isn't that small a project. What make the .Net framework appealing to most is the ability to work with IO, Database, Sockets, Forms, Console, etc. Mono does all this. It doesn't sound like this "Release" from Microsoft is going to really do much.
Scott Carr
Microsoft creates a better product only as a last resort. Without competition they will sit on their asses and collect monopoly rents. And that is why I cannot in good conscience use or recommend any Microsoft product or service.
Tired of FB/Google censorship? Visit UNCENSORED!
It's fairly straight forward to tune Javascript/DOM code to run in Mozilla, Opera, and Safari. But Internet Explorer? Meh. Let's just say that it adds another 30-50% to the project time.
Now Microsoft wants to broadcast their wonderful multimedia technology that will enhance the web, be cross-platform, show cool multimedia-type stuff that we can already do with SVG or Canvas.
Actually, the reason they're bundling the CLR is because the browser's own Javascript/DOM systems (which are also supported by Silverlight) are horrendously slow in comparison. At the MIX conference, they ran a demo where a Silverlight chess app had an identical AI player routine written in browser-run Javascript and CLR-run Javascript (I believe the exact same JS code was used for both), and the in-browser AI could only analyze a couple hundred moves in the same time the CLR version could analyze a million. That's four orders of magnitude faster.
That's why they're including the CLR as a code option. Because it's unbelievably faster.
NO CARRIER
.net libs are inflexible. Most methods are not 'virtual' so you can't override them; this was done on purpose because CLR cannot optimize virtual methods (Java can because its runtime type system is orders of magnitude simpler).
Delegates exist because of the need to map the existing function-call based Win32 event system into C#.
Runtime generic types and the restrictions they cause (either no variance or extremely slow variance) exist because of CLR's inability to execute code without full type information (the bytecode effectively cannot be interpreted due to value types). In C# you can't pass a List-of-Strings to a method taking List-of-Objects -- that's just dumb.
Slimmed down sounds like marketting speak? Crippled is more accurate.
Sure they can make a version of the CLR available on all platforms, just has to be crippled enough that people would rather use the one on windows. That way they can say "if you really really want to use it on any platform you can.. but we recommend that you use the version on windows because of X, Y and Z".. Also they will have some stupid excuse for not supporting X, Y and Z on the other platforms as if it was the fault of the other platforms.
- Tempestdata
"When a browser became a platform I'm not sure,"
Since the '90s when Netscape was touting its' server software and advertising "best viewed in Netscape X.x" on web sites.
Web as a platform is what scared MS into the so-called Browser Wars.
Let's not allow Microsoft to dilute the meaning of the terms "cross platform"
As opposed to Sun? Only recently do we have a JRE for FreeBSD that's supported. Only recently does Adobe make a Flash client for Linux. Adobe still has yet to make a flash client for 64 bit windows.
Vendors do it all the time - dilute the meaning of cross platform. What they really mean is "cross platform where it suits us".
09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
Are you sure that Mono does not support callouts to unmanaged code?
i braries
http://www.mono-project.com/Interop_with_Native_L
cpeterso
Needless to say, no such letter exists or has ever existed, and many think that it has all now been swept under the carpet and the current FAQ covers everything. It doesn't.
The news is that the first bits are available, and it's the complete CLR, not a stripped down CLR. The accompanying .NET Frameworks libs are stripped down, but the CLR is complete, supporting all .NET languages. The original wpf/e spec only had support for C# and VB.NET, and lacked support for reflection and whatnot (which many of the more "exotic" languages depend on).
Also, the DLR is new.
-- "I never gave these stories much credence." - HAL 9000
As I stated before, this is only significant if there are patents that apply exclusively to the CLR. It's quite possible that whatever patents are involved, they may apply just as much to other FOSS projects as they do to Mono. Given the fact that companies try to make their patents are broad as possible, this is a likely scenario. Not that I'm not claiming that these patents are valid, just that if they are found to be, they will probably cover more than the CLR.
If MS had the choice of suing the mono project vs. some higher profile target like Linux, I suspect they would choose the latter.
From inside the mind of Microsoft, 'Cross Platform' could well mean something like this :
.. this being a feature that users have strongly demanded from Microsoft during pre-production surveys and beta tests.
Being Cross-Platform means that Silverlight will be available on many different supported Operating Systems, and Silverlight represents THE most cross-platform product produced by Microsoft in its long and exciting history.
The wide range of operating systems targetted for production release of Silverlight include :
Vista Enterprise
Vista Ultimate
Vista Home Premium
Vista Business
Vista Home Basic (Limited support for some features)
The features and facilities of the free cross platform runtime binaries will understandably differ from platform to platform. For example, on Vista Home Basic, the silverlight runtime binary will only operate in full resolution no more than 3 times in any 24 hour period
Silverlight for Vista Enterprise and Vista Ultimate will be able to run for a whole 8 continuous hours in any 24 hours period before a noticable degradation in performance and visual resolution is apparent. Again, this is in response to demand from users for a safer and more secure experience when executing silverlight applications, and demonstrates Microsoft's committment to tailor its development to exactly suit the wishes of its valued users.
Silverlight makes use new synergistic paradigms in the field of computer science to provide the richest experience possible for the end user. Unfortunately, such highly advanced concepts as are seen in this new platform are not easily retrofitted to older legacy operating systems which are no longer vendor supported. Whilst Microsoft would dearly love to provide runtime binaries for systems such as Windows XP, our users have shown a clear preference for the more modern and powerful Vista range of operating systems, and so it is unlikely that a fully supported Silverlight runtime will be made available for Win XP. There may be some residual interest for Windows XP in the hobby niche market, however professional organisations overwhelmingly choose Vista.
Similarly, antique operating systems such as VMS, PrimeOS, MS-DOS and Linux either do not provide the necessary power to run Silverlight, or may in some instances have serious question marks regarding their legality, which unfortunately may impact our ability to support Silverlight in these environments. But again, the demand there is very low-impact, being part a dwindling hobby niche market of little mainstream interest.