DSLs in Boo: Domain-Specific Languages in .NET

Oren Eini writing as Ayende Rahien

January 2010 | 352 pages | B&W
ISBN: 1933988606

Out of Print $49.99 Softbound print + eBook
$39.99 eBook only (includes PDF, ePub, and Kindle)
Browse all our mobile format eBooks.


 Look Inside Resources Downloads


A general-purpose language like C# is designed to handle all programming tasks. By contrast, the structure and syntax of a Domain-Specific Language are designed to match a particular applications area. A DSL is designed for readability and easy programming of repeating problems. Using the innovative Boo language, it's a breeze to create a DSL for your application domain that works on .NET and does not sacrifice performance.

DSLs in Boo shows you how to design, extend, and evolve DSLs for .NET by focusing on approaches and patterns. You learn to define an app in terms that match the domain, and to use Boo to build DSLs that generate efficient executables. And you won't deal with the awkward XML-laden syntax many DSLs require. The book concentrates on writing internal (textual) DSLs that allow easy extensibility of the application and framework. And if you don't know Boo, don't worry—you'll learn right here all the techniques you need.



A leader in the .NET community, Ayende Rahien, whose real name is Oren Eini, contributes to numerous open-source projects including NHibernate, Castle, and Rhino Mocks. He blogs and speaks on architecture, data access, testing, and other topics.


“ Strangely enough I did not have a clue I could use DSL's to solve business problems. Seeing the examples in the first chapter of the book I realized this DSL thing could be very useful for a project we were starting. ”
Bart Reyserhove, Agile Project Manager, Capgemini

“I do think I can now create a DSL, and I'm sure many of you would agree with me after reading this book. In most cases, it's pretty easy with this book by your side. And for those cases where it gets hard, this book thoroughly covers all of your options. Do yourself a favor and read this book, you won't only learn a lot about DSL's, but also about problem solving in general.”
Davy Brion, Software Architect/Developer, Item Solutions

“Ayende Rahien's blend of humor and common-sense advice makes the book a joy to read. His example code and discussion of abstract concepts will challenge you to become a better programmer. Ayende Rahien brings you into his world, one where everything is done correctly. All code is maintainable, self-documenting, and easy-to-read. It's a fun world to visit, and if you follow his advice, you will learn to create such a world for yourself.”
Nathan Stott, Partner and Software Engineer at Whiteboard-IT