Polytechnic and design, Vol. 11 No. 3, 2023.
Professional paper
https://doi.org/10.19279/TVZ.PD.2023-11-3-03
LEGO++: A FRAMEWORK FOR IMPLEMENTING DOMAIN-SPECIFIC LANGUAGES WITH PREDEFINED SYNTAX
Aleksandar Stojanović
; Zagreb University of Applied Sciences, Vrbik 8, Zagreb, Croatia
*
Željko Kovačević
; Zagreb University of Applied Sciences, Vrbik 8, Zagreb, Croatia
Silvio Plehati
; Zagreb University of Applied Sciences, Vrbik 8, Zagreb, Croatia
Branimir Barun
; Republic of Croatia Ministry of Defence, Trg kralja Petra Krešimira IV br. 1, Zagreb, Croatia
* Corresponding author.
Abstract
The implementation of domain languages can be a demanding task because it includes knowledge of the domain, definition of syntax and semantics, and development of the interpreter or compiler. Furthermore, extending such languages with new syntax forms, such as adding new commands, may require complex implementation modifications. This paper describes a programming framework Lego++ that facilitates the implementation of domain languages by using a consistent language syntax and an implementation that enables the addition of new commands without modifying the interpreter itself. Furthermore, the user (programmer) does not have to know the details of the interpreter's inner working, only the interface that provides access to the source code elements, such as command parameter values or the result of a command block execution, as well as the abstract syntax tree of the source code. This framework is implemented in C++ and its performance is comparable to other similar program frameworks or implementations.
Keywords
Domain language; interpreter; extensible; consistent syntax
Hrčak ID:
311522
URI
Publication date:
24.11.2023.
Visits: 636 *