Complex systems are developed by teams of experts from multiple domains, who can be liberated from becoming programming experts through domain-specific languages (DSLs). The implementation of the different concerns of DSLs (including syntaxes and semantics) is now well established and supported by various language workbenches. However, the various services associated to a DSL (e.g., editors, model checkers, debuggers, or composition operators) are still directly based on its implementation. Moreover, while most of the services crosscut the different DSL concerns, they only require specific information on each. Consequently, this prevents the reuse of services among related DSLs and increases the complexity of service implementation. Leveraging the time-honored concept of interface in software engineering, we discuss the benefits of language interfaces in the context of software language engineering. In particular, we elaborate on particular usages that address current challenges in language development.
CITATION STYLE
Degueule, T., Combemale, B., & Jézéquel, J. M. (2017). On language interfaces. In Present and Ulterior Software Engineering (pp. 65–76). Springer International Publishing. https://doi.org/10.1007/978-3-319-67425-4_5
Mendeley helps you to discover research relevant for your work.