Stratego/XT 0.17. A language and toolset for program transformation

被引:162
作者
Bravenboer, Martin [1 ]
Kalleberg, Karl Trygve [2 ]
Vermaas, Rob [3 ]
Visser, Eelco [1 ]
机构
[1] Delft Univ Technol, Fac Elect Engn Math & Comp Sci EWI, Dept Software Technol, NL-2628 CD Delft, Netherlands
[2] Univ Bergen, Dept Informat, N-5020 Bergen, Norway
[3] Machina, Utrecht, Netherlands
关键词
stratego; stratego/XT; program transformation; rewriting strategies; rewrite rules; concrete syntax; dynamic rewrite rules;
D O I
10.1016/j.scico.2007.11.003
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Stratego/XT is a language and toolset for program transformation. The Stratego language provides rewrite rules for expressing basic transformations, programmable rewriting strategies for controlling the application of rules, concrete syntax for expressing the patterns of rules in the syntax of the object language, and dynamic rewrite rules for expressing context-sensitive transformations, thus supporting the development of transformation components at a high level ofabstraction. The XT toolset offers a collection offlexible, reusable transformation components, and tools for generating such components from declarative specifications. Complete program transformation systems are composed from these components. This paper gives an overview ofStratego/XT 0.17, including a description ofthe Stratego language and XT transformation tools: a discussion of the implementation techniques and software engineering process; and a description of applications built with Stratego/XT. (c) 2008 Elsevier B.V. All rights reserved.
引用
收藏
页码:52 / 70
页数:19
相关论文
共 54 条
  • [21] DOLSTRA E, 2002, ELECT NOTES THEORETI
  • [22] EKMAN T, 2004, THESIS LUND U
  • [23] FISCHER B, 2004, LNCS, P239
  • [24] ELI - A COMPLETE, FLEXIBLE COMPILER CONSTRUCTION SYSTEM
    GRAY, RW
    HEURING, VP
    LEVI, SP
    SLOANE, AM
    WAITE, WM
    [J]. COMMUNICATIONS OF THE ACM, 1992, 35 (02) : 121 - 131
  • [25] JOHANN P, 2003, UUCS2003050 I INF CO
  • [26] JOHANN P, 2001, ELECT NOTES THEORETI, V57
  • [27] KALLEBERG KT, 2005, ENTCS
  • [28] Scrap your boilerplate:: A practical design pattern for generic programming
    Lämmel, R
    Jones, SP
    [J]. ACM SIGPLAN NOTICES, 2003, 38 (03) : 26 - 37
  • [29] LAMMEL R, 2002, LNCS, P137
  • [30] Luttik Bas, 1997, 2 INT WORKSH THEOR P