RDN Express Blog

Blog archive

Two Runtimes Too Many?

With .NET 3.0 and .NET 3.5, Microsoft stacked its new libraries and tooling on the .NET 2.0 Base Class Libraries (BCL) and Common Language Runtime (CLR) that shipped with Visual Studio 2005, in what the company called a "layer cake" model.

This time around, the CLR is getting a major upgrade, jumping from .NET 2.0 to .NET 4.0. The .NET 4.0 Framework is expected in beta next month along with VS 2010 and will likely have a go-live license before the end of the year, according to several sources. Microsoft has been strangely quiet on the new framework since the Professional Developers Conference community technology previews (CTPs) in October.

What's new in the core that will make development better across the framework? Several enhancements have been baked into the BCL including Code Contracts and Parallel Extensions.

BCL improvements expected in the .NET 4.0 beta include variance annotations (co-variance and contra-variance) and tuples for language interoperability. For more on what's new in the BCL, check out the BCL Team Blog.

How will side-by-side installations work? Microsoft's Joshua Goodman served up a technical session entitled "Microsoft .NET Framework: CLR Futures" at PDC, where he characterized .NET 4.0 as the biggest release since 2005. The reason for the CLR upgrade is that Microsoft has finally solved some of the compatibility issues, according to Goodman, group program manager for the CLR team.

In the 4.0 framework, a new hosting model will allow developers to run apps in process side-by-side on either .NET 2.0 or .NET 4.0. The host will chose which version of the CLR to run components of the app in. If this works -- cool. But it sounds like there may be some scary compatibility issues on the horizon.

What's in .NET 4.0 that is going to be most useful to you as a developer? Have you checked out the framework CTPs? After four to five years, should Microsoft have made more changes to the core? Express your thoughts below or contact me directly at krichards@reddevnews.com.

Posted by Kathleen Richards on 04/23/2009 at 1:15 PM

comments powered by Disqus


  • How to Create a Machine Learning Decision Tree Classifier Using C#

    After earlier explaining how to compute disorder and split data in his exploration of machine learning decision tree classifiers, resident data scientist Dr. James McCaffrey of Microsoft Research now shows how to use the splitting and disorder code to create a working decision tree classifier.

  • Microsoft: Move from Traditional ASP.NET to 'Core' Requires 'Heavy Lifting'

    There are plenty of reasons to move traditional ASP.NET web apps -- part of the old .NET Framework -- to the new cross-platform direction, ASP.NET Core, but beware it will require some "heavy lifting," Microsoft says.

  • Purple Blue Nebula Graphic

    How to Compute Disorder for Machine Learning Decision Trees Using C#

    Using a decision tree classifier from a machine learning library is often awkward because it usually must be customized and library decision trees have many complex supporting functions, says resident data scientist Dr. James McCaffrey, so when he needs a decision tree classifier, he always creates one from scratch. Here's how.

  • Blazor's Future: gRPC Is Key

    Blazor guru Steve Sanderson detailed what Microsoft is thinking about the future of the revolutionary project that enables .NET-based web development using C# instead of JavaScript, explaining how gRPC is key, along with a new way of testing and a scheme for installable desktop apps.

  • Don't Do It All Yourself: Exploiting gRPC Well Known Types in .NET Core

    If you're creating business services that send dates and decimal data then you may be concerned that gRPC services don't support the relevant data types. Don't Panic! There are solutions. Here's how to use them.

.NET Insight

Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.

Upcoming Events