DSLs in Action

November 18, 2013 - Comment

Your success—and sanity—are closer at hand when you work at a higher level of abstraction, allowing your attention to be on the business problem rather than the details of the programming platform. Domain Specific Languages—”little languages” implemented on top of conventional programming languages—give you a way to do this because they model the domain of

Buy Now! $22.95Amazon.com Price
(as of September 21, 2017 10:46 am UTC - Details)

Your success—and sanity—are closer at hand when you work at a higher level of abstraction, allowing your attention to be on the business problem rather than the details of the programming platform. Domain Specific Languages—”little languages” implemented on top of conventional programming languages—give you a way to do this because they model the domain of your business problem.

DSLs in Action introduces the concepts and definitions a developer needs to build high-quality domain specific languages. It provides a solid foundation to the usage as well as implementation aspects of a DSL, focusing on the necessity of applications speaking the language of the domain. After reading this book, a programmer will be able to design APIs that make better domain models. For experienced developers, the book addresses the intricacies of domain language design without the pain of writing parsers by hand.

The book discusses DSL usage and implementations in the real world based on a suite of JVM languages like Java, Ruby, Scala, and Groovy. It contains code snippets that implement real world DSL designs and discusses the pros and cons of each implementation.

Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.

What’s Inside

Tested, real-world examples How to find the right level of abstraction Using language features to build internal DSLs Designing parser/combinator-based little languages

Product Features

  • ISBN13: 9781935182450
  • Condition: New
  • Notes: BRAND NEW FROM PUBLISHER! 100% Satisfaction Guarantee. Tracking provided on most orders. Buy with Confidence! Millions of books sold!

Comments

John Griffin "Senior Software Engineer" says:

Five languages, no trivial examples! OverviewOnce you implement a domain model in your favorite programming language, it no longer speaks the dialect that the domain expert can understand. If your implementation doesn’t conform exactly to the specifications you agreed on with the domain user there’s no way it can be verified by the person who understands the domain rules.DSLs in Action addresses this by suggesting a DSL-driven application development model. Design your domain APIs around the syntax and semantics that the domain user understands. Then, even during the development of the code base, the user can do incremental verifications of the domain rule implementations. If your code speaks the language of the domain, it becomes clearer to the person who develops it, to the one who maintains it, and to a nonprogrammer domain expert who understands the business.You will learn how to design and implement DSLs using the modern languages Ruby, Groovy, Scala, Clojure and Java. In…

Federico Tomassetti says:

A pragmatical book on DSLs This book introduces DSLs in the right way. It explains well their importance and later it explains how to realize the first internal DSLs easily. The author created a really smooth path into the DSLs realm and I think it is a great accomplishment. Moreover the author masters many languages and it is able to explain the differences between each of them, providing advices to choose the best option to implement your DSLs. Reading this book you will play with Ruby, Scala (the langauge the author seems to prefer), Groovy and Clojure. I appreciated very much the inclusion of a functional language, I think it gives completeness to the topic of internal DSLs.On internal DSLs this is absolutely the most pragmatic and complete resource I had ever read.On external DSLs the author introduce the important concepts and provide an example using Xtext (in my opinion the best technology to use right now).I also appreciated the chapter on the future trends. I think…

Write a comment