This talk is about doclipser an Eclipse plugin we have released in June. Doclipser is a Dockerfile editor build with Xtext. It allows syntax highlighting, autocomplete, syntax validation and it's automatically built with Tycho and CicrleCI.
When it comes to build an application out of an EMF model, well, the path is not so straightforward: which frameworks should I use for the UI? Will I be tied to desktop or will I be ready for the web and mobile? At what degree of integration?
EMF Parsley was created for addressing these questions: it provides a set of reusable UI components (trees, tables, forms, editors), which are completely customizable, and an Xtext/Xbase based DSL editor for defining/customizing the UI components, which then can be used by your application with few lines of code.
Developing mobile apps for C++ / Qt environments using Eclipse Momentics (based on CDT) there's much stuff you have to code manually or copy/paste every day.
I developed a DSL based on Xtend to make this much easier. This isn't an app generator - it's more like generating a workbench where you'll find all those patterns to work offline (caching to JSON or SQLite), to deal with C++ Pointers for business logic and UI. All the boring stuff will be generated.
Xtext is a popular Eclipse framework for easily implementing Domain Specific Languages: Xtext deals not only with the compiler but also with all the typical Eclipse IDE tooling. Implementing an Xtext DSL in a test driven way makes the development easier, solid and resilient to new versions of Xtext itself. With that respect, Xtext provides a testing framework to easily implement Junit tests.
Do you already know and use Xtext, but feel like something is missing? Do you feel too constrained? Shouldn’t there be something beyond structural DSLs? You know what? There is! Xbase. It will unchain your languages and give you the freedom to express yourself!
Business domain-specific languages (DSLs) enable domain experts without programming knowledge to capture knowledge about business rules, workflows, calculations or data. These experts are typically not familiar with software development, and would consequently be scared off rather than supported by a complex IDE. On the other hand, good tooling is essential for the acceptance and usability of a DSLs.