Microsoft plans to share more information on its "Roslyn" compiler-as-a-service (CaaS) project during its annual Microsoft Research Faculty Summit this week.
Roslyn, at a high level, is Microsoft's vehicle for "taking .Net to the cloud." Microsoft's stated goal with Roslyn is to "build a compiler architecture that is amenable to use as a foundation for modern tools."
This week, on July 19, in a session entitled "Refactoring with Roslyn Circus Comes to Town," Visual Studio Professional Lead Program Manager Karen Ng is slated to talk about how Roslyn will expose the Visual Basic and Visual C# compilers' code analysis. The description of that session (from the Microsoft Research web site):
"The moment we’ve been waiting for has finally arrived! The Microsoft .NET compilers are going to give access to the internals of the compilation pipeline, with handy IDE integration too! Language research on .NET will become easier than ever, permitting new kinds of refactoring and compiler/runtime research. In this talk, you’ll see how to use the new APIs to do all sorts of fancy tricks. See automatic parallelization! Thrill to cross-language cut-and-paste! Be amazed at deep semantic analyses!"
Roslyn isn't a brand-new codename. I've had it listed in my Microsoft Codetracker for a while. And back in December 2010, Eric Lippert, a developer on the C# compiler development team, blogged about the high-level plans for Roslyn. (If you want to hear more from Lippert on Roslyn, check out this .Net Rocks podcast with him from March 2011.)
It's hard to tell from any of this information how far away Microsoft is from commercializing the Roslyn technology. Might it be part of Visual Studio 2012? Or is it further out? I'm not entirely sure (especially given how little information Microsoft has shared so far about its Visual Studio 2012 futures). But given the Roslyn talk this week is happening as part of a Microsoft Research event, I'm thinking Roslyn may be further away than next year, in terms of becoming a shipping product/service.
I did notice, however, that Microsoft is currently advertising for a Program Manager on the Roslyn team, in which Roslyn is described as "the next version of the C# and VB language and compiler." In that job post, Microsoft officials describe Roslyn's purpose and position in the following way:
"The C# and VB Languages team owns the incredible language features you've seen with LINQ (Language Integrated Query), Dynamic, and Async. Our next goal is a bold, new undertaking that will redefine how you think of compilers and where programming can go. Until now, the VB and C# compilers have been used as black boxes. You put text in, and you get out a binary file. In CodeName Roslyn, we’re changing that dynamic by building an API that exposes compilers’ analysis engine, and opening a world of new scenarios including REPL, write-your-own refactorings, C# and VB as scripting languages, and taking .NET to the cloud."
If anyone knows any more about Microsoft's commercialization plans for Roslyn, I'm all ears....