The official source of product insight from the Visual Studio Engineering Team
In Soma’s previous blog post, we announced the first CTP of the Roslyn project. Roslyn is a forward looking project that enables the C# and VB compilers to be used as a service. Today, as Jason Zander discusses in more detail, we’re excited to announce the second Roslyn CTP – with full support for Visual Studio 2012 RC. You can get the CTP from http://msdn.com/Roslyn/, or go directly to the download. We’ve also released a NuGet Package that includes the Roslyn Compiler APIs and pieces that do not have a dependency on Visual Studio.
This version of the Roslyn CTP supports both Visual Studio 2010 and the Visual Studio 2012 Release Candidate. At install time, the Roslyn CTP will determine what versions of Visual Studio you have installed, and add support for them.
NOTE: For VS2010 you need to have SP1 and the VS SDK, and for VS2012 RC you also need to have the VS SDK.
Since the last CTP, the team has been working hard on implementing new language features to reach parity with the existing set of features as quickly as possible. We’ve made a ton of great progress and have filled in a significant number of language features. Some significant new features include:
In response to feedback from our first CTP, we’ve made numerous changes and additions to our API to make it easier to understand and work with the APIs. Some significant examples include:
The primary goal of the Roslyn CTP is to gather feedback on the public APIs and give you an early look at the Interactive window feature. The CTP is intended for preview-use only. Please use it to build rich code tools and extensions so that you can learn about the APIs and provide feedback. This is only a technology preview, and there are known issues and bugs. While the shape of the public API surface is complete for the compilers, we are in the process of implementing the full C# and Visual Basic languages.
Please try out this new Roslyn CTP, and give us feedback. You can ask questions on our forum, enter bugs on our Connect website, or feel free to reach out on Twitter using the #RoslynCTP hashtag.
Thanks, Kevin Pilch-Bisson Development Lead (Microsoft “Roslyn”)
Kevin is the Development Lead for the IDE Services team in Roslyn. Before joining the Roslyn project in 2009, he was a member of the C# IDE team for 7 years, working on features like IntelliSense, Colorization, Refactoring, and Formatting. Kevin has a degree in computer engineering degree from the University of Waterloo, a beautiful wife and three children. You can find him on Twitter at http://twitter.com/pilchie.
Awesome!! I am looking forward to using Roslyn June 2012. Keep up the great work!
P.S. Is "Roslyn" still a codename or is it the real name?
P.S.S. Is there going to be a full release of Roslyn (Roslyn 1.0)?
@Nevin -- Roslyn is a code name. When we eventually ship, "Roslyn" will be the new C# and VB compilers and editing experiences for Visual Studio.
@Dustin -- Thanks!
Great stuff! How do I go about adding my own assembly ( DLL ) to the C# Interactive Window? Meaning, I can add a basic one provided... using System;, but what about one I created... using MyClass;?
Thanks again and great job!
The Interactive Window supports #r directives. So, you can reference assemblies in the Interactive Window like so:
In addition, if you want to "seed" the Interactive Window with a project that your working on, just open your solution, right-click on the project in the Solution Explorer and choose "Reset C# Interactive from Project". That will build your project and reset the Interactive Window with the references from your project and your built assembly.
I was able to get the assembly to work using the #r statement. However, when trying to "seed" in the Solution Explorer I get an "Invalid assembly name" popup error. Did I do something wrong or are others seeing this error?
Its a pity that this little gem has been so over shadowed by CAPS.
This is truly a feature that I have been eagerly waiting for :)
Kudos! In light of the other changes in Visual Studio 2012, I expect Roslyn to be a very important component, with one of the first full-scale uses being an open-source project to reimplement VS2010's IDE.
So does this mean that we would be able to use Roslyn in Silverlight to get some #r "System.Data" action going in there?
@Joe Johnston: No, that has nothing to do with the compiler. That was a purposeful choice made by the SL architects.
Thanks for the release! I've used it in my code documentation checkin policy ( http://cdcp.codeplex.com ) and until now I have not got any problems.
Roslyn, ya hice mi primer sistema con roslyn y todo mi codigo y pantallas son guardados en sql server
al que le interese le puedo enviar un demo de todo lo que se puede hacer con roslyn, esto lo hice hace 13 años con visual foxpro y lo llame sistema de arquittectura abierta
Take a look at qinjection.codeplex.com
I'm developping it using Roslyn API.
There is still work to ... so any comments will be accepted.