It is actually quite a spectacular piece of technology and in a way there is a LOT of similarities between the REPL environment I created in the O2 Platform and the one Roslyn is trying to do. In fact I'm thinking of moving some of O2's scripting capabilities from the current SharpDevelop parser to this new Roslyn one since their object model seems to be MUCH more powerful (of course that I'm bias, but I think that the O2's REPL environment as a couple killer features missing in current version of Roslyn REPL, so let's create the best-of-both-worlds REPL environment :) )
I've started using Roslyn in O2, and the first thing to do was to create an REPL environment which you can see in action in this video.
I am documenting the 'scripts evolution' (as drafts), and here are two I just created:
- Using Roslyn (first tests).rtf (series of scripts that ended up with the Roslyn-based REPL enviroment shown above)
- Using Roslyn (consuming Static and Sematic data).rtf (execution of the scripts from the high-recommended Whitepaper: Roslyn Project Overview )
I think there is HUGE potential with this technology, and one area that I'm specially interested in is doing Security-focused Static Analysis, with integration with TeamMentor and Cat.NET (see Video: Injecting TeamMentor into Cat.Net running inside VisualStudio )
You can get Roslyn from O2 (it will install the package from NuGet), but if you want to try the visual studio integration you need to get the Microsoft “Roslyn” October 2011 CTP
If you want to comment this post or video, please use this reddit thread
Some Roslyn References and articles:
- http://msdn.microsoft.com/en-us/roslyn (main site)
- http://social.msdn.microsoft.com/forums/en-us/roslyn (forums)
- Two draft docs published by Roslyn team
- REPL and Code Semantics: http://tinyurl.com/3kprrlk
- Scripting APIs: http://tinyurl.com/3ezykda
- Channel 9 videos:
- The Roslyn Project - Meet the Design Team
- Going Deeper with Project Roslyn: Exposing the C# and VB compiler’s code analysis
- http://blogs.msdn.com/b/visualstudio/archive/2011/10/19/introducing-the-microsoft-roslyn-ctp.aspx
- http://blogs.msdn.com/b/csharpfaq/archive/2011/12/02/introduction-to-the-roslyn-scripting-api.aspx
- http://visualstudiomagazine.com/articles/2011/11/16/the-roslyn-scripting-api.aspx