DSLs in Boo

Book description

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.



About the Technology


About the Book


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 Reader


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.



Quotes
A great gateway into Boo and Domain-Specific Languages.
- Justin Chase, Microsoft

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.

Product information

  • Title: DSLs in Boo
  • Author(s): Oren Eini
  • Release date: December 2009
  • Publisher(s): Manning Publications
  • ISBN: 9781933988603