Having now sat through the keynote and had a look at the WinRT stuff, I'm unconvinced that "WinRT is Windows" as the presenters claim.
To me, WinRT is a series of native, "Win32" if you will, components that all have suitable managed wrappers that run on the CLR4. WinRT itself is a framework that hosts the CLR4 (rather than having a separate CLR fork) and includes the BCL4 assemblies in addition to the new Windows 8-specific ones (such as the sensor framework).
It explains a lot: the JS stuff most likely uses the DLR - which means it's possible someone will add the ability to use Python and other DLR languages. The presence of C++ was probably referring to CLI/C++ rather than pure native C++ on account of how the "XAML" box overlapped both the C# and C++ blocks.
I believe the source-level compatibility with Trident is a coincidental with the fact the DLR JS runtime strictly complies with the ECMAScript specification. I don't believe the native JS JIT engine makes any appearances in WinRT. This is further evidenced by the support of the HTML+JS platform in Blend, which is just a design-time host for XAML and presumably a similarly .NET-derived HTML+JS platform.
Off-topic, if this means Microsoft has developed a managed HTML+JS platform, it's possible we'll see a decent web-browser made available for the Xbox 360.
Any thoughts, speculation, or evidence otherwise?
WinRT is just a COM components library, which can be consumed by CLR or C++, its not a 'runtime' itself.
and the the ie engine exposes those winRT components directly to js, not via the clr
It was also very clear that cross platform support between x86 and ARM wasn't available in the C++ world (which was very clearly referred to as native code), so I doubt that's really a C++/CLI world either - partly because it's never gained much traction but mainly because the cross platform issues would undoubtedly have been ironed out of C++/CLI if the aim was for everything to run everywhere.
Isn't there a new export format designed to make sharing references (to WinRT) easier and better between CLR based languages and Native languages?
The Windows Runtime (WinRT) is a key piece of technology used by all Metro style apps in Windows. What actually is the Windows Runtime though? This session explores this key question by digging into the concepts of language projections, the WinRT type system and advanced API patterns included in the Windows Runtime. Learn how Windows uses interface patterns combined with language projection to present modern concepts in a natural and familiar way to each programming language.
I think a few thousand .NET developers let out a collective sigh that C# and VB.NET will have a place in the next version of Windows. But HTML5 seems like it will be a huge, if not the principal development framework in the next version regardless (Microsoft themselves seemed to only demo HTML5 apps).
One must wonder if Microsoft is pushing HTML5 or is HTML5 pushing Microsoft. I know at my workplace web apps have pretty much displaced everything else (other than IDEs, I guess) - this trend started a long time ago.
i think the reason for showing off so many html apps is to hammer home the point that html+js is an equall player amoing the development models. i think the point is that you're supposed to be able what ever platform you perfer and it will work well in win8
so i dont think its about a perferred platform at all. if they'd not shown html apps, people would blame them of not going all in on their own platform
Why not just save yourself a little time and download the developer build this evening and see what there is inside?
.NET developers were intentionally left in a butthurt speculation mode of the continued relevance of their platform for months. Maybe it wasn't even in their original plans to support C#/.NET but all the complaining on the Internet had a effect.
Some of them are, some arent.. the mdl folks have found plenty of each
why didnt they talk about .net/sl/xaml eariler? who knows, but presumably because to they wanted to suck upp tp html devs.. there was a whole lot of other stuff they didnt show in that first win8 preview as well
build did show that xaml applications are a first class member in win8 and the leaks show this as well.
if you think they just put in .net support as an after thought you really havent been paying attention.. hmtl+js is just another application model, its not the application model.. just look at the sessions, they are pretty evenly devided among the diffrent models
@bass. So till yesterday for u were trying to prove the fud that ms will abandon .net/sl and only html5 will be tool ...... And now it's about determining superiority of tool ........Ms made it pretty clear if u want cross platform development use .net/ xaml / htnl5-js........ If u want platform specific use c++
I think ultimately the developer community and not Microsoft will decide what will get more support. Microsoft did not invent HTML5, they were practically uninvolved in its development at all. The reason they are backing it is because everyone else is. Google is writing a whole OS around HTML5 and other web technologies.
People do use web apps so much these days, hell I'm using a web app right now - it's called Channel 9. Microsoft really has no choice but to be all in with this technology and make it a first class citizen in Windows. It's really the developer community and ultimately the users who decide, and the whole developer community is much larger than the .NET developer community.
I don't see the same advancement there for .NET, other than "I'm still here". That's great I guess. You guys can celebrate that, you are not completely dead in the water. But I wouldn't be surprised if WinRT is a net regression over WPF and .NET proper.
@Bass:And yet HTML has spectacularly failed to gain much traction when it comes to mobile apps. Apple insisted on it for the v1 iPhone and nobody cared about iPhone development till something better came along, webOS and ChromeOS pretty much tanked at launch because there just wasn't any drive for HTML based apps. Android, iPhone and even WP7 have all had way more take up by providing a more native-like development environment.
'Web applications' like C9 are really a different kettle of fish, they have a place but rarely seem to be a user's preferred choice given the option. And developers in general will prefer to stick to the tools they already know, it's not like they gain anything by going down the HTML route. As you say, time will tell, but I don't expect to see every developer suddenly jump on the HTML bandwagon just because they now can.
..ookay so why does it matter if microsoft is perferring html5, as you claim, at all?
yeah, there are alot of web apps, but compare the prevelance of webapps on phones compared to native phone apps? for phones its pretty safe to say people perfer native apps compared to browser experiences.
you put it best yourself, WinRT is an advancement for web developers on win8, but its some thing that xaml developers are already used to, so its no huge advance for them (may be even a regression?) remember that winRT is the same for all the app models..
we'll see, as you say, developers will decide. its a very interesting time since for the first time the web application model is at a direct competition level with other app models, as opposed to beeing the "default" and having no competitors as is the case on the web.
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.