Saturday, October 09, 2010

Review: DSLs in Boo: Domain Specific Languages in .NET

Ayende Rahien
DSLs are taking the enterprise world by storm, and if you're not prepared for them, you are going to be missing out on all the productivity benefits.

Don't get scared away by the Boo name on the cover. Boo is a "Pythonesque" language on top of the 
CLR (.NET) with access to all the great features you know and love about .NET, it just happens to be better suited for more "expressive" DSLs than say C# or VB but you still get all the power of the .NET framework plus a more elegant syntax and flexibilities to tap into the compiler and enhance the language. 

As you might have guessed, this book is not for beginners on .NET or newcommers to DSLs, if you want to capture the theory I advice you to first read 
Martin Fowler's book Domain-Specific Languages (Addison-Wesley Signature Series) and then come back to this one. Don't get me wrong this book does give you the "essence" of DSLs too, but there's a lot of heavy details that you *should* know, before you even attempt implementing a DSL and this book won't be giving you those.

The greatest thing about this book is that it doesn't just tell you how to build a DSL in .NET, it explains how to build different kinds of DSLs depending on the business needs and walks you through how to implement a whole infrastructure to design, produce, support and maintain multiple DSLs successfully thought-out the life-cycle of your projects.

If you want to get the *full* benefits of DSLs in a .NET enterprise environment you have to read this book!

No comments:

Post a Comment