Manning Early Access Program (MEAP)
Read chapters as they are written, get the finished eBook as soon as it’s ready, and receive the pBook long before it's in bookstores.
Domain-specific languages are custom text or graphical interfaces that allow domain experts to create and modify their own software systems. With a syntax that’s clear and familiar to the non-technical user, DSLs are precise enough to generate working software that would normally require traditional coding. Written for developers who need to create user-facing DSLs, Building User-Friendly DSLs unlocks clear and practical methods to create DSLs with easy-to-use interfaces. By working through a detailed example of a car rental company, you'll see how creating a custom DSL can get rid of time-consuming and bureaucratic code adjustments, freeing you up to work on features whilst your clients and colleagues write their software themselves!
about the technology
Imagine if your non-technical clients could safely produce software without the need for anyone to manually write code. Domain-specific languages are purpose-built programming interfaces that make that possible—no programming experience required. This frees software developers from the time-consuming translation of a client's functional and domain-specific specifications, replacing complex code for modern and intuitive UIs.
about the book
Building User-Friendly DSLs shows you how to design and build modern DSLs for business users. Drawing on years of industry experience, author Meinte Boersma lays out an iterative process for creating languages accessible to domain experts such as operations specialists, data analysts, and financial experts. You'll start with an overview of software language engineering before diving into the unique projectional editing paradigm that makes it easy to produce DSLs for business. There are no special tools or proprietary software required—you'll work with an open source JavaScript stack that ensures the techniques you learn are easy to port between projects.
what's inside
Build a complete Domain IDE for a car rental company
Implement a projectional editor for your DSL
Implement content assist, type system, expressions, and versioning language aspects
Evaluate business rules
Work with Abstract Syntax Trees
Reduce notated DSL content in concrete syntax into abstract syntax
about the reader
For developers with JavaScript and web development experience.
about the author
Meinte Boersma has been a practitioner of model-driven software development and software language engineering since 2007. He has given workshops on DSL, participated in organizing the Language Workbench Challenge, and has spoken at conferences on DSLs.
customers also reading
This book1°2°3°
FREE domestic shipping on orders of three or more print books
This is a nice practical exploration of Domain Specific Languages using JavaScript.
The manuscript is excellent. The content is great, the illustrations are very well done. The author has taken a very pedagogical approach to transfer practical and rapidly exploitable knowledge in a short period of time.
A MUST-HAVE book on the topic!
DSL is always considered a niche area that's difficult to do. This book make it easy for you to understand with great examples. If you ever wanted to learn but never tried, you now have a good reason to do so!
Great external DSL reference. With this book you will have all you need to build your external DSL!
An interesting concept of mixing DSL design with high-level software design.
This book is really interesting for the intended user. Easy to grasp, understand, follow along and try out the code in small incremental steps.
It's one thing to use a DSL, it's another to design and implement one. This book narrows the gap for anyone interested.
An exceptional quality level. The author’s wealth of experience is evident in the clear and concise manner in which he presents the material. The book is very easy to follow and apply from a practical point of view.
A GREAT book to get started building serious DSLs!
A very patient deep introduction and exploration of DSLs.
The best resource I've read so far on DSLs! Very interesting to follow, with many figures that provide a visual cue about the process.
related titles
related titles
how to play
guess the geekle in 5-, 6-, 7- tries.
each guess must be a valid 4-6 letter tech word. hit enter to submit.
after each guess, the color of the tiles will change to show how close your guess was to the word.