Domain Specific Languages
Domain-Specific Languages (DSLs) are receiving attention as the possible next abstraction step in programming that will bring software development closer to domain requirements. By trading generality for expressiveness within a limited domain, DSLs offer substantial gains in ease of use in their domain of application as compared to general purpose programming languages (such as C++, Java, Python, etc.). Modern implementation technologies like Xtext boost the applicability of DSLs in industrial practice.
This micro-learning combines a hands-on workshop on developing Domain-Specific Languages using Xtext with a range of applications from several cases. These include the rejuvenation of legacy software, complex state machine behavior, movement control and safety-critical components.
Domain-Specific Languages can help to introduce model-driven software engineering into industrial practice, typically starting with just a single software component. However, Domain-Specific Languages should not be applied to all software components. During this skill lab, the participants learn how to build a Domain-Specific Language and, in particular, how to decide whether it may be effective to introduce a Domain-Specific Language for a specific software component.