DSLs in Boo
Domain Specific Languages in .NET
Oren Eini writing as Ayende Rahien
  • January 2010
  • ISBN 9781933988603
  • 352 pages
  • printed in black & white

A great gateway into Boo and Domain-Specific Languages.

Justin Chase, Microsoft

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 application's 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.

What's inside

  • Introduction to DSLs, including common patterns
  • A fast-paced Boo tutorial
  • Dozens of practical examples and tips
  • An entertaining, easy-to-follow style

About the author

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.

eBook $39.99 pdf + ePub + kindle

FREE domestic shipping on three or more pBooks

Useful, readable, and empowering-really captures the Boo spirit.

Avishay Lavie, Contributor to "The Boo Programming Language"

Goes Way beyond Boo particulars into universally applicable guidance.

Mark Seemann, Safewhere

...will erase any doubts you may have about writing your own DSL.

Garabde "Garo" Yeriazarian, Kajer Hughes, Inc.