Wednesday, November 05, 2008 8:30 AMAs I read through the documentation and saw that we can create textual DSL's and well as graphical ones using Quadrant, I was wondering about the future of the DSL Toolkit that was shipped in VS 2008 (and earlier versions). The DSL Toolkit also allows the creation of Domain Specific Languages, create custom designers off that and also perform code generation.
Are these aimed at 2 different set of audiences?
Wednesday, November 05, 2008 3:35 PMI would really like to see an answer on that, too :-)
Microsoft joined OMG and created a set of UML Diagrams based on DSL Tools. These are already available in the VS2010 CTP and most likely to be released with the next VS version.
Now comes Oslo... And it seems to be a development stack totally apart the DSL Tools. What's happening there?
Wednesday, November 05, 2008 11:07 PMI don't speak officially for Microsoft, but this question came up at the end of the DSL session at the PDC with ChrisAn and GioDL:
Oslo: Building Textual DSLs
Not a lot of details were given, but they said that they recognize that a migration path is needed.
Personally, I have tried using the DSL Toolkit and while I was thrilled with the concept, I was disapppointed with the actual tools, so I'm optimistic that "Oslo" will provide a better experience.
Since the DSL Toolkit is itself a model, I would think that it should be fairly straightforward to create an "M" model for it and then use MGrammer to transform it to whatever you would want even if Microsoft didn't provide a migration path in the first release.
Thursday, November 06, 2008 1:08 AMI don't speak for Microsoft either, but I was at PDC as well, so I can share some thoughts.
I worked with the DSL tools for a good while and I was also fairly burned in the end. On one side, there is only so much that you can express with only boxes and arrows. More importantly, the tool was just too hard to work with as you still needed to delve a lot into visual studio's apis to work around obvious limitiations of the tool.
On the other side, DSL tools are still providing at least a 10x productivity gains if you want to build a visual designer integrated in visual studio compared to the traditional way.
I don't know if Quadrant is going to be integrated in Visual Studio, first of all, and may be consumed by a wider audience; DSL Tools are actively developed anyway (they had really slow progress for a long time). I just noticed this post, which may help clarify the dsl tools roadmap: http://blogs.msdn.com/stuart_kent/archive/2008/11/05/dsl-tools-in-visual-studio-2010.aspx
Going back to MGrammar, considering that you can project models fairly easily (although, at the moment, they may not be a real semantic models and may need further processing), it would be fairly straightforward, I assume, to create a processor that exposes those models to T4 templates (traditionally used by DSL Tools) for code generation. Template-based code generation may not always be elegant or needed, but a lot of people asked about it at PDC, so I would assume Microsoft will provide a solution for this scenario anyway (It could be a nice little pet project actually :D).
- Proposed As Answer by Mike Weinhardt Thursday, November 06, 2008 9:29 PM
Thursday, November 06, 2008 9:32 PMGood question! It's commonly-asked too, so we're updating the Oslo FAQ to answer this with the following:
Q: How does this work relate to Microsoft’s DSL toolkit?
A: An important principle of "Oslo" is the creation and manipulation of textual and visual domain specific languages. While "Oslo" provides a tool, “Quadrant”, that enables the simple creation and use of these DSLs in a first class way, it is not the only tool to do so. The DSL Toolkit within the Visual Studio SDK was one of the first tools to embrace this notion within the “Model-Assisted” modeling space. This tool will continue to be an important offering today and into the future. As we continue the development of "Oslo" we will align our Model-Assisted efforts, including the DSL toolkit, with our “Oslo” investments in the “executable” modeling space.
Thursday, November 06, 2008 10:35 PMI've been asked this question many times in the last week, and rather than just refer to the Oslo FAQ, I jotted down some thoughts of my own. Please take a look at my blog posting here:
Feedback and discussion, as ever, is welcomed.