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 Martin Fowler and Rebecca J. Parsons address the topic of Domain-Specific Languages. “Domain-Specific Languages” does not only address the concepts behind DSLs, but also tries to explain the subject in a pragmatic manner using examples in Java, C# and other languages.The book contains different patterns that reveal best practices in designing DSLs.
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