Domain-specific languages are often implemented by embedding them in general-purpose programming languages. The Kiama library used in this chapter for the Scala programming language contains a rewriting component that is an embedded implementation of the Stratego term rewriting language. The authors evaluate the trade-offs inherent in this approach and its practicality via a non-trivial case study. An existing Stratego implementation of a compiler for the Apply image processing language was translated into a Kiama implementation. The chapter examines the linguistic differences between the two versions of the Stratego domain-specific language, and compares the size, speed, and memory usage of the two Apply compiler implementations. The autho...
Abstract—Software systems are becoming increasingly com-plex, requiring a deep knowledge to work and...
In this paper, we investigate the idea of controlling rewriting by strategies and we develop a strat...
Abstract—Automatic code transformation in which transfor-mations are tuned for specific applications...
Kiama is a lightweight language processing library for the Scala programming language. It provides S...
Embedding domain-specific languages (DSLs) in general-purpose programming languages offers a simpler...
Program transformation is used in many areas of software engineering. Examples include compilation,...
We describe the experience of implementing a Domain-Specific Language using transformation to a Gene...
The Kiama language processing library is a collection of domain-specific languages for software lang...
Developing programming paradigms and languages that ease the program-mers' job of writing quality re...
We describe a language for defining term rewriting strate-gies, and its application to the productio...
Preprint of paper published in: Science of Computer Programming (Elsevier), 72 (1-2), 2008; doi:10.1...
AbstractStratego/XT is a language and toolset for program transformation. The Stratego language prov...
In this thesis we study the implementation of program transformations at a high abstraction level. W...
As recent programming languages provide improved conciseness and flexibility of syntax, the developm...
Model driven software development is gaining momentum in the software engineering world. One approac...
Abstract—Software systems are becoming increasingly com-plex, requiring a deep knowledge to work and...
In this paper, we investigate the idea of controlling rewriting by strategies and we develop a strat...
Abstract—Automatic code transformation in which transfor-mations are tuned for specific applications...
Kiama is a lightweight language processing library for the Scala programming language. It provides S...
Embedding domain-specific languages (DSLs) in general-purpose programming languages offers a simpler...
Program transformation is used in many areas of software engineering. Examples include compilation,...
We describe the experience of implementing a Domain-Specific Language using transformation to a Gene...
The Kiama language processing library is a collection of domain-specific languages for software lang...
Developing programming paradigms and languages that ease the program-mers' job of writing quality re...
We describe a language for defining term rewriting strate-gies, and its application to the productio...
Preprint of paper published in: Science of Computer Programming (Elsevier), 72 (1-2), 2008; doi:10.1...
AbstractStratego/XT is a language and toolset for program transformation. The Stratego language prov...
In this thesis we study the implementation of program transformations at a high abstraction level. W...
As recent programming languages provide improved conciseness and flexibility of syntax, the developm...
Model driven software development is gaining momentum in the software engineering world. One approac...
Abstract—Software systems are becoming increasingly com-plex, requiring a deep knowledge to work and...
In this paper, we investigate the idea of controlling rewriting by strategies and we develop a strat...
Abstract—Automatic code transformation in which transfor-mations are tuned for specific applications...