What if we could create a language that could be easily understood by the layman but yet enforce those rules that apply to our business domain? What if a snippet of this language could then be interpreted and performed at runtime, without the need for recompilation or redeployment of the system? Aaron Kendall shows how to build such a domain-specific language for a saavy but non-technical crowd.
Spring XD (eXtreme Data) is Pivotal’s Big Data play. It joins Spring Boot and Grails as part of the execution portion of the Spring IO platform. Whilst Spring XD makes use of a number of existing Spring projects it is a runtime environment rather than a library or framework, comprising a bin directory with servers that you start up and interact with via a shell.
Markus Völter, one of the authors of "Model-Driven Software Development", has published a new book in the field of model-driven software development (MDSD). "DSL Engineering" focusses on the design and implementation of domain specific languages (DSLs).
In their new book on Domain-Specific Languages Martin Fowler and Rebecca Parsons address the concept and practice of DSLs. 4
Text-based DSLs are useful, an custom editor for the DSL is even better. Concrete allows to build customized editors for JSON-based DSLs/Models. InfoQ talked to Concrete's creator Martin Thiede.
In this article, author Peter Bell discusses the best practices on how to evolve the DSLs using techniques like backwards compatibility through versioning, to automated transformation of statements. 14
InfoQ examines three techniques for encouraging experimentation with potential new Java language features - DSLs, the annotation processor, and moving the syntactic sugar from the language to the IDE. 14
Jean-Jacques presents a unified view of Model Driven Engineering, Architecture and Programming models. He introduces a new approach to specify the execution elements semantics of DSLs. 6
In this article Vaughn Vernon explains the difference between internal and external DSLs and shows the steps involved in developing a complex external DSL. 19
This article introduces RGen, a modelling framework inspired by openArchitectureWare. RGen uses internal DSLs for defining metamodels and offers a full modelling stack for Ruby. 2