Language-oriented modularity through awesome DSALs
David H. Lorenz
Abstract
David H. Lorenz
Abstract
In this talk we coin the term language-oriented modularity to refer to the process of constructing and composing DSALs to better support aspect-oriented modularity. Language-oriented modularity strives to keep our aspect language as abstract as possible and our software code as modular as possible. While general purpose aspect-oriented languages offer low-level abstractions for modularizing a wide range of crosscutting concerns, they lack the modularity abstractions to tackle all cases of crosscutting. With language-oriented modularity, a solution to unanticipated crosscutting concerns is to construct and combine multiple DSALs to form aspect-oriented modularity of new kinds. We evaluate the Awesome composition framework in terms of its support for language-oriented modularity.
OpenAlex reports 6 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
In this talk we coin the term language-oriented modularity to refer to the process of constructing and composing DSALs to better support aspect-oriented modularity. Language-oriented modularity strives to keep our aspect language as abstract as possible and our software code as modular as possible. While general purpose aspect-oriented languages offer low-level abstractions for modularizing a wide range of crosscutting concerns, they lack the modularity abstractions to tackle all cases of crosscutting. With language-oriented modularity, a solution to unanticipated crosscutting concerns is to construct and combine multiple DSALs to form aspect-oriented modularity of new kinds. We evaluate the Awesome composition framework in terms of its support for language-oriented modularity.
Key concepts: Modularity (biology), Computer science, Aspect-oriented programming, Modular design, Programming language, Construct (python library), Process (computing), Software engineering