OIL: an industrial case study in language engineering with Spoofax
-
Published:2024-06-03
Issue:
Volume:
Page:
-
ISSN:1619-1366
-
Container-title:Software and Systems Modeling
-
language:en
-
Short-container-title:Softw Syst Model
Author:
Bunte Olav, Denkers JasperORCID, van Gool Louis C. M., Vinju Jurgen J., Visser Eelco, Willemse Tim A. C., Zaidman Andy
Abstract
AbstractDomain-specific languages (DSLs) promise to improve the software engineering process, e.g., by reducing software development and maintenance effort and by improving communication, and are therefore seeing increased use in industry. To support the creation and deployment of DSLs, language workbenches have been developed. However, little is published about the actual added value of a language workbench in an industrial setting, compared to not using a language workbench. In this paper, we evaluate the productivity of using the Spoofax language workbench by comparing two implementations of an industrial DSL, one in Spoofax and one in Python, that already existed before the evaluation. The subject is the Open Interaction Language (OIL): a complex DSL for implementing control software with requirements imposed by its industrial context at Canon Production Printing. Our findings indicate that it is more productive to implement OIL using Spoofax compared to using Python, especially if editor services are desired. Although Spoofax was sufficient to implement OIL, we find that Spoofax should especially improve on practical aspects to increase its adoptability in industry.
Funder
Top Consortia for Knowledge and Innovation Canon Production Printing
Publisher
Springer Science and Business Media LLC
Reference74 articles.
1. van Deursen, A., Klint, P., Visser, J.: Domain-specific languages: an annotated bibliography. SIGPLAN Not. 35(6), 26–36 (2000). https://doi.org/10.1145/352029.352035 2. Boersma, M.: Business-Friendly DSLs. Manning (to appear) (2024) 9781617296475 3. van Deursen, A., Heering, J., Klint, P.: Language Prototyping: An Algebraic Specification Approach, volume 5 of AMAST Series in Computing. World Scientific, Singapore (1996). ISBN 978-981-4498-73-9. https://doi.org/10.1142/3163 4. Fowler, M.: Language workbenches: The killer-app for domain specific languages? (2005) 5. Erdweg, S., van der Storm, T., Völter, M., Tratt, L., Bosman, R., Cook, W.R., Gerritsen, A., Hulshout, A., Kelly, S., Loh, A., Konat, G., Molina, P.J., Palatnik, M., Pohjonen, R., Schindler, E., Schindler, K., Solmi, R., Vergu, V.A., Visser, E., van der Vlist, K., Wachsmuth, G., van der Woning, J.: Evaluating and comparing language workbenches: Existing results and benchmarks for the future. Comput. Lang. Syst. Struct. 44, 24–47 (2015). https://doi.org/10.1016/j.cl.2015.08.007
|
|