Announcing the Visual Studio 2010 DSL SDK Beta 1

After the Visual Studio 2010 SDK announcement yesterday, it’s my turn to be excited to announce the availability, today, of the Visual Studio 2010 DSL SDK Beta1!

 

A separate download? Why?

Visual Studio 2010 ships with the DSL Tools and T4 runtime in the box in every edition since it is used by other tools in Visual Studio, such as the Linq to SQL designer. The DSL Tools SDK (for the DSL authoring experience) is shipped separately and depends on and exploits features in the Visual Studio SDK. This is the DSL SDK. This is a slight departure from Visual Studio 2008 where DSL Tools authoring shipped inside the VS SDK. Shipping separately gives us more flexibility on when we ship, in particular allows us to make more frequent improvements.

 

What is new?

In Visual Studio 2010, the F5 experience is improved, and deployment of a DSL considerably simplified, exploiting the extension manager in the Visual Studio platform and the new facilities in the Visual Studio SDK top create a VSIX package which is a simple zip archive that unpacks itself into the User’s extensions folder.
Visual Studio 2010 Beta1 also brings 11 new DSL features:

  1. Different models can now interact with each other, (and with Visual Studio Team System Architecture UML designers), using the ModelBus. A DSL author can choose to generate a ModelBus adapter, that will expose his model to other models or tools.
  2. Databinding support has been added, allowing Windows.Forms and WPF form-based designers to be created by binding a standard winform or WPF-based UI directly to DSL models. This enables developers to quickly create designers such as the .ResX or .settings designers in Visual Studio.
  3. It is now possible to have completely or partially read only models, which can be used for instance by reviewing and commenting tools.
  4. A number of UI enhancements have been added, including :
    • moveable labels for connectors,
    • sticky toolbox (when the user double-clicks on an item in the toolbox,it’s not necessary to return to the toolbox for repeated applications of the tool),
    • quick navigation and editing of compartments with the keyboard
    • Copy and paste of diagram elements to images (in Bitmap and .wmf/emf)
    • Copy and paste of model elements in or between diagrams
  1. The notion of DslLibrary has been introduced. This enables factorizing and componentizing DSLs (for instance having several domain models have the same base-domain class). The authoring for this feature will not be present in Beta1
  2. The DSLs can now be extended by third parties after they have deployment. The authoring for this feature will not be present in Beta1

A migration tool is included to help DSL authors migrate there existing DSLs from Visual Studio 2008 and the associated VSSDK. (For more details, see the documentation and a video)

 

Where can I find Samples and Documentation?

For samples and Beta 1 documentation, visit the following page on Code Gallery: https://code.msdn.microsoft.com/DslTools. There is already the Read Me, and the online What's new. Be also sure to read the information in the download page, to help you getting started. We will progressively post samples there about the new features, so stay tuned, this is where the information will be available!

 

You will also have more information visiting the blogs of several members off the DSL Tools team:

 

I wish you to enjoy this Beta1 as much as we enjoyed building it