@inproceedings{BV04, author = {Martin Bravenboer and Eelco Visser}, title = {Concrete Syntax for Objects. {D}omain-Specific Language Embedding and Assimilation without Restrictions}, booktitle = {Proceedings of the 19th ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2004)}, pages = {365--383}, year = 2004, editor = {Douglas C. Schmidt}, address = {Vancouver, Canada}, month = {October}, publisher = {ACM Press}, urldoi = {http://doi.acm.org/10.1145/1028976.1029007}, urlacm = {http://portal.acm.org/citation.cfm?id=1028976.1029007}, urlinfo = {http://www.cs.uu.nl/groups/ST/Visser/ConcreteSyntaxForObjects}, urlpdf = {http://www.st.ewi.tudelft.nl/~eelco/papers/BV04.pdf}, pubcat = {conference}, project = {Stratego and XT and SDF and TraCE and MoDSE and TFA}, category = {key and refereed}, acceptance = {27/173 and 16%}, urlbib = {BV04.bib}, } @inproceedings{BV08, author = {Martin Bravenboer and Eelco Visser}, title = {Designing Syntax Embeddings and Assimilations for Language Libraries}, booktitle = {Models in Software Engineering. Workshops and Symposia at MoDELS 2007}, pages = {34-46}, year = {2008}, editor = {H. Giese}, volume = {5002}, series = {Lecture Notes in Computer Science}, issn = {0302-9743}, isbn = {978-3-540-69069-6}, location = {Nashville, TN, USA}, address = {Heidelberg}, publisher = {Springer}, note = {Selected paper from the Workshop on Language Engineering (ATEM 2007)}, project = {Stratego and XT and SDF and TraCE and MoDSE and TFA}, urldoi = {http://dx.doi.org/10.1007/978-3-540-69073-3_5}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-042.pdf}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {BV08.bib}, } @inproceedings{BV08.ptc, author = {Martin Bravenboer and Eelco Visser}, title = {Parse Table Composition. Separate Compilation and Binary Extensibility of Grammars}, booktitle = {Software Language Engineering (SLE 2008)}, pages = {74-94}, year = {2009}, editor = {D. Gasevic and E. van Wyk}, volume = {5452}, series = {Lecture Notes in Computer Science}, issn = {0302-9743}, address = {Heidelberg}, location = {Toulouse, France}, month = {March}, publisher = {Springer}, pubcat = {proceedings}, project = {SDF and TraCE and MoDSE}, urldoi = {http://dx.doi.org//10.1007/978-3-642-00434-6_6}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-043.pdf}, urlsle = {http://planet-sl.org/sle2008/}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {BV08.ptc.bib}, } @inproceedings{Doyle:2006, author = {Duncan Doyle and Hans Geers and Bas Graaf and Arie van Deursen}, title = {Migrating a Domain-Specific Modeling Language to MDA Technology}, booktitle = {Proceedings of the 3rd International Workshop on Metamodels, Schemas, Grammars, and Ontologies for Reverse Engineering ({ateM 2006})}, publisher = {Johannes Gutenberg-Universitat Mainz}, year = {2006}, editor = {Jean Marie Favre and Dragan Gasevic and Ralf Lammel and Andreas Winter}, pages = {47-54}, note = {Informatik Bericht}, number = {1}, isbn = {ISSN 0931-9972}, url = {http://www.st.ewi.tudelft.nl/%7Ebasgraaf/publications/ATEM2006.pdf}, project = {MoDSE and Reconstructor}, topic = {MDE,Software Evolution}, group = {SE}, urlbib = {Doyle-2006.bib}, } @inproceedings{DVW07, author = {Arie van Deursen and Eelco Visser and Jos Warmer}, title = {Model-Driven Software Evolution: A Research Agenda}, booktitle = {CSMR Workshop on Model-Driven Software Evolution (MoDSE 2007)}, optcrossref = {}, optkey = {}, pages = {41--49}, year = {2007}, editor = {D. Tamzalit}, optvolume = {}, optnumber = {}, optseries = {}, address = {Amsterdam, The Netherlands}, month = {March}, optorganization = {}, optpublisher = {}, optnote = {}, optannote = {}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2007-006.pdf}, project = {MoDSE}, urlbib = {DVW07.bib}, } @inproceedings{GHKV08, author = {Danny M. Groenewegen and Zef Hemel and Lennart C. L. Kats and Eelco Visser}, title = {{WebDSL}: A Domain-Specific Language for Dynamic Web Applications}, booktitle = {Companion to the 23rd ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2008)}, isbn = {978-1-60558-220-7}, pages = {779-780}, year = {2008}, editor = {Nadyne Mielke and Olaf Zimmermann}, location = {Nashville, Tenessee, USA}, month = {October}, address = {New York, NY, USA}, publisher = {ACM}, urldoi = {http://doi.acm.org/10.1145/1449814.1449858}, note = {(poster)}, pubcat = {poster}, project = {Stratego and XT and MoDSE and WebDSL}, category = {refereed}, urloopsla = {http://www.oopsla.org/oopsla2008/}, urlbib = {GHKV08.bib}, } @inproceedings{GHKV08.dsm, author = {Danny M. Groenewegen and Zef Hemel and Lennart C. L. Kats and Eelco Visser}, title = {When Frameworks Let You Down. Platform-Imposed Constraints on the Design and Evolution of Domain-Specific Languages}, booktitle = {Proceedings of the 8th OOPSLA Workshop on Domain Specific Modelling (DSM'08)}, pages = {64--66}, year = {2008}, editor = {Jeff Gray and Jonathan Sprinkle and Juha-Pekka Tolvanen and Matti Rossi}, address = {Nashville, Tennessee, USA}, month = {October}, pubcat = {workshop proceedings}, category = {refereed}, project = {MoDSE and WebDSL and TFA}, urldsm = {http://www.dsmforum.org/events/DSM08/}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {GHKV08.dsm.bib}, } @inproceedings{GV08, author = {Danny M. Groenewegen and Eelco Visser}, title = {Declarative Access Control for {WebDSL}: {C}ombining Language Integration and Separation of Concerns}, booktitle = {Eighth International Conference on Web Engineering (ICWE 2008)}, pages = {175--188}, year = {2008}, editor = {Daniel Schwabe and Francisco Curbera}, month = {July}, publisher = {IEEE CS Press}, pubcat = {conference}, project = {MoDSE and ASSESS and WebDSL and Stratego}, urldoi = {http://dx.doi.org/10.1109/ICWE.2008.15}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-021.pdf}, urlicwe = {http://icwe2008.webengineering.org/}, group = {SE}, researchcode = {I-ISS-07}, note = {best paper award}, isbn = {978-0-7695-3261-5}, urlbib = {GV08.bib}, } @inproceedings{GVDV08, author = {Gerardo de Geest and Sander D. Vermolen and Arie van Deursen and Eelco Visser}, title = {Generating Version Convertors for Domain-Specific Languages}, booktitle = {Proceedings 15th Working Conference on Reverse Engineering (WCRE 2008)}, pages = {197--201}, year = {2008}, editor = {Andy Zaidman and Massimiliano Di Penta and Ahmed Hassan}, optvolume = {}, optnumber = {}, optseries = {}, optaddress = {}, month = {October}, publisher = {IEEE Press}, project = {MoDSE}, group = {SE}, pubcat = {proceedings}, category = {refereed}, url = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-037.pdf}, urlwcre = {http://swerl.tudelft.nl/wcre2008}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {GVDV08.bib}, } @article{HGKV09, author = {Zef Hemel and Danny M. Groenewegen and Lennart C. L. Kats and Eelco Visser}, title = {Code Generation by Model Transformation. {A} Case Study in Transformation Modularity}, journal = {Software and Systems Modeling}, year = {2009}, optkey = {}, optvolume = {}, optnumber = {}, optpages = {}, optmonth = {}, note = {(accepted modulo minor revision)}, optannote = {}, pubcat = {journal}, project = {Stratego and XT and MoDSE and TFA and WebDSL}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {HGKV09.bib}, } @inproceedings{HKV08, author = {Zef Hemel and Lennart C. L. Kats and Eelco Visser}, title = {Code Generation by Model Transformation. {A} Case Study in Transformation Modularity}, booktitle = {Theory and Practice of Model Transformations. First International Conference on Model Transformation (ICMT 2008)}, pages = {183--198}, year = 2008, editor = {J. Gray and A. Pierantonio and A. Vallecillo}, volume = 5063, series = {Lecture Notes in Computer Science}, issn = {0302-9743}, month = {July}, publisher = {Springer}, address = {Heidelberg}, location = {Z{\"u}rich, Switzerland}, isbn = {978-3-540-69926-2}, project = {Stratego and XT and MoDSE and TFA and WebDSL}, urldoi = {http://dx.doi.org/10.1007/978-3-540-69927-9_13}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-012.pdf}, urlicmt = {http://www.model-transformation.org/ICMT2008/}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {HKV08.bib}, } @inproceedings{HVV08, author = {Zef Hemel and Ruben Verhaaf and Eelco Visser}, title = {{WebWorkFlow}: An Object-Oriented Workflow Modeling Language for Web Applications}, booktitle = {Proceedings of the 11th International Conference on Model Driven Engineering Languages and Systems (MODELS 2008)}, editor = {K. Czarnecki and I. Ober and J.-M. Bruel and A. Uhl and M. V{\"o}lter}, series = {Lecture Notes in Computer Science}, issn = {0302-9743}, volume = {5301}, pages = {113-127}, year = {2008}, month = {September}, publisher = {Springer}, address = {Heidelberg}, location = {Toulouse, France}, isbn = {978-3-540-87874-2}, pubcat = {conference}, project = {MoDSE and WebDSL and Stratego}, acceptance = {21\%}, urldoi = {http://dx.doi.org/10.1007/978-3-540-87875-9_8}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-029.pdf}, urlmodels = {http://www.modelsconference.org/}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {HVV08.bib}, } @inproceedings{KBV08, author = {Lennart C. L. Kats and Martin Bravenboer and Eelco Visser}, title = {Mixing Source and Bytecode. {A} Case for Compilation by Normalization}, booktitle = {Proceedings of the 23rd ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2008)}, year = {2008}, editor = {G. Kiczales}, pages = {91--108}, location = {Nashville, Tenessee, USA}, address = {New York, NY, USA}, month = {October}, publisher = {ACM}, urldoi = {http://doi.acm.org/10.1145/1449764.1449772}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-030.pdf}, urloopsla = {http://www.oopsla.org/oopsla2008/}, isbn = {978-1-60558-215-3}, issn = {0362-1340}, acceptance = {28\%}, pubcat = {conference}, project = {Stratego and XT and Dryad and TFA and MoDSE}, category = {key and refereed}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {KBV08.bib}, } @inproceedings{KJNV09, author = {Lennart C. L. Kats and Maartje de Jonge and Emma Nilsson-Nyman and Eelco Visser}, title = {Providing Rapid Feedback in Generated Modular Language Environments. Adding Error Recovery to Scannerless Generalized-LR Parsing}, booktitle = {Proceedings of the 24th ACM SIGPLAN Conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 2009)}, year = {2009}, editor = {Gary T. Leavens}, location = {Orlando, Florida, USA}, address = {New York, NY, USA}, month = {October}, publisher = {ACM Press}, series = {ACM SIGPLAN Notices}, urloopsla = {http://www.oopsla.org/oopsla2009/}, issn = {0362-1340}, optpages = {}, optvolume = {}, optnumber = {}, optdoi = {}, optissn = {}, opturldoi = {}, opturlpdf = {}, optisbn = {}, acceptance = {17\%}, pubcat = {conference}, note = {(to appear)}, project = {Stratego and XT and SDF and TFA and MoDSE}, category = {key and refereed}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {KJNV09.bib}, } @inproceedings{KKV08, author = {Lennart C. L. Kats and Karl Trygve Kalleberg and Eelco Visser}, title = {Generating Editors for Embedded Languages. Integrating {SGLR} into {IMP}}, booktitle = {Proceedings of the Eighth Workshop on Language Descriptions, Tools, and Applications (LDTA 2008)}, optcrossref = {}, optkey = {}, optpages = {}, year = {2008}, editor = {A. Johnstone and J. Vinju}, optvolume = {}, optnumber = {}, address = {Budapest, Hungary}, month = {April}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-006.pdf}, urlldta = {http://ldta2008.inf.elte.hu/}, optannote = {}, project = {TFA and MoDSE and SDF and Stratego and XT}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {KKV08.bib}, } @inproceedings{KKV09, author = {Lennart C. L. Kats and Karl Trygve Kalleberg and Eelco Visser}, title = {Domain-Specific Languages for Composable Editor Plugins}, booktitle = {Proceedings of the Ninth Workshop on Language Descriptions, Tools, and Applications (LDTA 2009)}, optcrossref = {}, optkey = {}, optpages = {}, year = {2009}, editor = {T. Ekman and J. Vinju}, optvolume = {}, optnumber = {}, series = {Electronic Notes in Theoretical Computer Science}, optaddress = {}, month = {April}, optorganization = {}, publisher = {Elsevier Science Publishers}, optannote = {}, pubcat = {conference}, project = {TFA and MoDSE and SDF and Stratego}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {KKV09.bib}, } @inproceedings{KV07.spoofax, author = {Karl Trygve Kalleberg and Eelco Visser}, title = {Spoofax: An Interactive Development Environment for Program Transformation with {Stratego/XT}}, booktitle = {Proceedings of the Seventh Workshop on Language Descriptions, Tools, and Applications (LDTA 2007)}, optcrossref = {}, optkey = {}, pages = {47--50}, year = {2007}, editor = {A. Sloane and A. Johnstone}, address = {Braga, Portugal}, month = {March}, project = {Stratego and XT and SDF and TFA and MoDSE}, pubcat = {conference and tool description}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2007-018.pdf}, urlldta = {http://www.di.uminho.pt/ldta07/}, urlbib = {KV07.spoofax.bib}, } @inproceedings{KV08.pom, author = {Karl Trygve Kalleberg and Eelco Visser}, title = {Fusing a Transformation Language with an Open Compiler}, booktitle = {Proceedings of the Seventh Workshop on Language Descriptions, Tools, and Applications (LDTA 2007)}, pages = {21-36}, year = {2008}, editor = {A. Sloane and A. Johnstone}, volume = {203}, number = {2}, series = {Electronic Notes in Theoretical Computer Science}, issn = {1571-0661}, location = {Braga, Portugal}, month = {April}, publisher = {Elsevier}, project = {Stratego and XT and TFA and MoDSE}, urldoi = {http://dx.doi.org/10.1016/j.entcs.2008.03.042}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2007-025.pdf}, urlldta = {http://www.di.uminho.pt/ldta07/}, abstract = {Program transformation systems provide powerful analysis and transformation frameworks as well as concise languages for language processing, but instantiating them for every subject language is an arduous task, most often resulting in half-completed frontends. Compilers provide mature frontends with robust parsers and type checkers, but solving language processing problems in general-purpose languages without transformation libraries is tedious. Reusing these frontends with existing transformation systems is therefore attractive. However, for this reuse to be optimal, the functional logic found in the frontend should be exposed to the transformation system - simple data serialization of the abstract syntax tree is not enough, since this fails to expose important compiler functionality, such as import graphs, symbol tables and the type checker. In this paper, we introduce a novel and general technique for combining term-based transformation systems with existing language frontends. The technique is presented in the context of a scriptable analysis and transformation framework for Java built on top of the Eclipse Java compiler. The framework consists of an adapter automatically extracted from the abstract syntax tree of the compiler and an interpreter for the Stratego program transformation language. The adapter allows the Stratego interpreter to rewrite directly on the compiler AST. We illustrate the applicability of our system with scripts written in Stratego that perform framework and library-specific analyses and transformations.}, keywords = {compiler scripting; strategic programming; program transformation}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {KV08.pom.bib}, } @inproceedings{Reus:2006.ecmda, author = {T. Reus and H. Geers and A. van Deursen}, title = {Harvesting Software Systems for {MDA}-Based Reengineering}, booktitle = {European Conference on Model Driven Architectures: Foundations and Applications}, publisher = {Springer-Verlag}, year = {2006}, editor = {Arend Rensink and Jos Warmer}, volume = {4066}, series = {Lecture Notes in Computer Science}, pages = {213--225}, isbn = {0302-9743}, url = {http://www.st.ewi.tudelft.nl/%7Earie/papers/mda2006/ecmda2006.pdf}, project = {MoDSE and Reconstructor}, group = {SE}, urlbib = {Reus-2006.ecmda.bib}, } @inproceedings{SKV09, author = {Anthony M. Sloane and Lennart C. L. Kats and Eelco Visser}, title = {A Pure Object-Oriented Embedding of Attribute Grammars}, booktitle = {Proceedings of the Ninth Workshop on Language Descriptions, Tools, and Applications (LDTA 2009)}, optcrossref = {}, optkey = {}, optpages = {}, year = {2009}, editor = {T. Ekman and J. Vinju}, optvolume = {}, optnumber = {}, series = {Electronic Notes in Theoretical Computer Science}, optaddress = {}, month = {April}, optorganization = {}, publisher = {Elsevier Science Publishers}, note = {(to appear)}, optannote = {}, pubcat = {conference}, project = {TFA and MoDSE}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {SKV09.bib}, } @inproceedings{Vis08, author = {Eelco Visser}, title = {{WebDSL}: {A} Case Study in Domain-Specific Language Engineering}, booktitle = {International Summer School on Generative and Transformational Techniques in Software Engineering (GTTSE 2007)}, pages = {291--373}, publisher = {Springer}, address = {Heidelberg}, month = {October}, year = {2008}, editor = {R. L{\"a}mmel and J. Visser and J. Saraiva}, volume = {5235}, series = {Lecture Notes in Computer Science}, issn = {0302-9743}, isbn = {978-3-540-88642-6}, urldoi = {http://dx.doi.org/10.1007/978-3-540-88643-3_7}, urlpdf = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-023.pdf}, urlblog = {http://blog.eelcovisser.net/index.php?/archives/45-Domain-Specific-Language-Engineering.html}, project = {Stratego and XT and SDF and MoDSE and TFA}, pubcat = {proceedings}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {Vis08.bib}, } @inproceedings{VV08, author = {Sander D. Vermolen and Eelco Visser}, title = {Heterogeneous Coupled Evolution of Software Languages}, booktitle = {Proceedings of the 11th International Conference on Model Driven Engineering Languages and Systems (MODELS 2008)}, editor = {K. Czarnecki and I. Ober and J.-M. Bruel and A. Uhl and M. V{\"o}lter}, series = {Lecture Notes in Computer Science}, issn = {0302-9743}, volume = {5301}, pages = {630-644}, year = {2008}, month = {September}, publisher = {Springer}, address = {Heidelberg}, location = {Toulouse, France}, pubcat = {conference}, project = {MoDSE and SDF and Stratego and WebDSL}, acceptance = {21\%}, urldoi = {http://dx.doi.org/10.1007/978-3-540-87875-9_44}, url = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2008-028.pdf}, urlmodels = {http://www.modelsconference.org/}, isbn = {978-3-540-87874-2}, group = {SE}, researchcode = {I-ISS-07}, urlbib = {VV08.bib}, }