Early reports suggested that the Rosyln project would just be a better runtime-accessible compiler and REPL-style interpreter, but it turns out that it is much more ambitious. By opening up the entire compiler pipeline Microsoft hopes that developers will create a wide variety of tools at many levels.
Imagine you are doing maintenance on an application from the late 90’s that uses the classic ADO libraries. The recompiled code works fine on any Windows 7 SP1 machine, but mysteriously crashes on the Windows XP machines that have been running the program for nearly a decade. This is the problem facing lots of maintenance developers.
Asynchronous techniques can offer significant improvements in an application’s overall throughput, but it isn’t free. An asynchronous function is often slower than its synchronous alternative. Stephen Toub of MSDN Magazine has recently covered this topic in an article titled “Async Performance: Understanding the Costs of Async and Await”.
In keeping with their annual cadence, Microsoft has begun work on the next version of ASP.NET MVC. Areas of emphasis include smoothing out the development and deployment workflow, sharing more features with Web Forms, improving AJAX support, and offering a better story for HTML 5 on mobile and tablet devices.
The open source platform for embedded devices, .NET Micro Framework, has begun beta testing of version 4.2. This build includes the work of both Microsoft and third-party developers, something that is becoming increasingly common as Microsoft redefines its role in the open source community.
A General Distribution Release of .NET 4 was published on the 11th of June. This includes numerous fixes and features, many of which were previously published as individual hot fixes. There are also updates to the HTML 5 and portable library support. For your convenience we have sorted the fix list by technology. For the complete list, including file versions, see KB 2468871.
Alan Berman recently explained the details of how the new Async and Await keywords impact the flow of control. Using these keywords allows an asynchronous function's return values to be processed without using explicitly defined callbacks. This allows for more natural code grouping, as calling and processing of an asynchronous function can occur in the same function.
The rather extensive runtime library used by Visual Basic and its compiler has been a major stumbling block for the language. Both the Windows Phone 7 and the XBox 360 don’t support the library, making clumsy workarounds necessary. With Visual Basic 10 SP 1, Microsoft once again tries to get it right.
The new Async CPT for VB and C# looks like it may actually make it into the core language. But with all the emphasis on multi-core systems, why is Microsoft investing so heavily in syntax for designed specifically for making single-threaded asynchronous programming easier?
On November 29th, the Visual Basic team announced the Release To Web version of Visual Basic for Windows Phone Developer Tools. This is exciting news for the large number of Visual Basic developers to achieve almost parity with the C# developer community in regards to Windows Phone 7 development of applications.
In a recent blog post the Visual Basic team let slip an announcement that Visual Basic and C# would be getting a new syntax for asynchronous programming. Built on top of the Task Parallel Library that was introduced in .NET 4, this adds the Async and Await keywords to both languages.
In 2009 Microsoft’s Lucas Bolognese announced a commitment to co-evolution for C# and Visual Basic. And the productization of F#, some have assumed it extends to that language as well. But by only offering C# in the initial release of WP7, this promise has been brought into doubt.
Optional parameters have always been part of .NET, but with C# unwilling to support it, using them was generally considered taboo unless work with COM libraries. Now that C# 4 does support them, we are starting to see them used for a lot more than just legacy code. Other uses include interoperability with dynamic languages, immutable data structures, and various parts of ASP.NET MVC.
Visual Basic has always been on the fence between static and dynamic typing. In the beginning VB supported late binding, which is known today as “duck typing”. Through the years it has adopted support for stricter typing, though recently it has swung the other way with full support for the dynamic language runtime.