Visual Studio 2013+1 Promises New C# / VB Functionality
Some key details emerged for C# and Visual Basic developers looking to use Visual Studio 2013 (VS2013): Microsoft program manager Mads Torgersen confirmed that neither language will see any specific updates in VS2013. The given reason for this is that the language teams are busy completing the work needed to finish building the compilers on top of the Roslyn framework. As Torgersen stated,
“While the old compiler infrastructure is rock solid and supports VS 2013 beautifully, any effort we spend implementing new language features on it takes away from investing in the tooling, language features and compiler APIs that will power the future.”(It should be noted that there are new features coming in NET 4.5.1 framework.)
C# creator Anders Hejlsberg revealed that VS2013 will have the same compiler technology for C#/Visual Basic as VS2012’s native-code based compiler. However, the successor to VS2013 will utilize the Roslyn project as the basis for its C# and Visual Basic compilers. Hejlsberg stated that the Roslyn compilers are feature complete, and they have been tested on all in-house C#/VB code bases. To eliminate remaining bugs and polish the project further, the team has also scraped external sources of code like GitHub and CodePlex for additional code to test against.
As a result, a new Roslyn CTP will probably be after the launch of VS2013. Roslyn compilers are designed to be dropped-in to VS2013 to be enabled/disabled on command, so if they are released out-of-band it would be easy for developers to activate them. Hejlsberg acknowledged that it has taken longer than expected to complete Roslyn, but the team has to ensure that it will properly compile existing code. An additional source of difficulty is that while creating Roslyn the development team uncovered bugs in the native code compiler implementation that need to be handled.
According to Hejlsberg, while developers can expect Roslyn to be provide more functionality than the existing compiler it will suffering no loss in performance. In fact, Roslyn is intended to work very well on multicore systems, as it utilizes new techniques and algorithms to meet or exceed performance of existing compiler. All users should expect to see improvements, especially those working with larger code bases.