Introducing the Microsoft "Roslyn" CTP

Anthony D. Green [MSFT]

(Begin dramatic movie trailer music, slow PowerPoint slide show with cliché sound effects)

  • October 2006 –VB Architect-emeritus Paul Vick responds via his blog to question by some completely random VB customer named Anthony about bootstrapping the VB compiler (rewriting it in VB), admits no definite plans yet but says that “one thing that would be nice about a managed compiler would be opening up the services to other tools…”
  • April-May 2007 – Paul Vick begins to open up on his blog about forward looking internal plans to make a hostable/scriptable future version of Visual Basic using a managed component written in VB.
  • 2008-2009 – Other stuff happens
  • October 2010 – At PDC 10 Technical Fellow Anders Hejlsberg gives update on “Roslyn” project (formerly known as compiler-as-a-service)
  • May 2011 – In a VB Team blog post celebrating Visual Basic’s 20th year at Microsoft PM Anthony D. Green writes of great anticipation about VB’s future, including a complete compiler rewrite and a new set of managed APIs built on top of the new compiler
  • September 2011 – At BUILD Technical Fellow Anders Hejlsberg demos C# Interactive and Scripting built using the Roslyn APIs, anticipates eminent release of preview bits.
  • October 2011 – Microsoft releases the Roslyn CTP – <–YOU ARE HERE

OK, maybe I have a flair for the dramatic but that’s because today is such a dramatically exciting day. After years of foreshadowing, and mentioning, and updating on our part I’m thrilled to announce on behalf of the united Visual Basic & C# Languages Team the availability of the Microsoft “Roslyn” CTP. This early preview represents an incredible milestone for us in a years-long process of bootstrapping both languages and providing a rich set of APIs exposing a host of compiler analyses and services.

And, there’s more goodness to the Roslyn project than just what you can do with the new compilers alone. We’re also previewing a powerful set of Language Services APIs and extensibility points to allow 3rd parties to do amazing things inside Visual Studio using the compiler APIs like creating custom code issues and quick-fixes and even writing custom refactorings.

But wait, there’s more. If you download the CTP today we’ll throw in a preview of what we’re thinking about for an Interactive (REPL) window experience in VB and C#. The VB Interactive window isn’t quite baked yet for this CTP so we’re holding that goodness in reserve for a future release. But in the meantime you should play with the C# Interactive window anyway and let us know what you like, what you don’t like, and what you think might be different from C# that is important to you for the unique VB Interactive experience.

Next steps:

  • Where you can learn more and get it:
  • What you should do with it: Make code-smart tools, play with the Interactive window
  • Where you should send your feedback: Roslyn Forums for discussions, Connect for bugs, #RoslynCTP for Twitter shout-outs.
  • What you should know before sending feedback: That this is a technology preview and that it has known limitations. The API generally looks the way we think it should look but not all of either language is implemented at this time (see the Forums for a list of known limitations and unimplemented language features).

The CTP includes a wealth of documents and samples to get you started using Roslyn, but keep a look out on this blog (and the Roslyn homepage) for more posts exploring the Roslyn APIs – including a series of posts starting this month by yours truly.


Happy Experimenting!


Anthony D. Green
Program Manager
Visual Basic & C# Languages Team 


Leave a comment

Feedback usabilla icon