@inproceedings{DeursenV02, title = {{The Reengineering Wiki}}, author = {Arie van Deursen and Eelco Visser}, year = {2002}, doi = {http://csdl.computer.org/comp/proceedings/csmr/2002/1438/00/14380217abs.htm}, tags = {annotated bibliography, reverse engineering, bibliography, visitor, reengineering, taxonomy, wiki, rule-based, web engineering}, researchr = {http://researchr.org/publication/DeursenV02}, cites = {0}, citedby = {0}, pages = {217-220}, booktitle = {CSMR}, } @inproceedings{GroenewegenV08, title = {Declarative Access Control for {WebDSL}: Combining Language Integration and Separation of Concerns}, author = {Danny M. Groenewegen and Eelco Visser}, year = {2008}, doi = {http://dx.doi.org/10.1109/ICWE.2008.15}, tags = {transformation language, role-based access control, separation of concerns, action semantics, language design, systematic-approach, WebDSL, aspect weaving, design, access control, access control policies, DSL, transformation, rules, semantics, abstraction, weaving, rule-based, web applications, domain-specific language}, researchr = {http://researchr.org/publication/GroenewegenV08}, cites = {26}, citedby = {6}, pages = {175-188}, booktitle = {ICWE}, } @mastersthesis{Visser:1993, title = {Combinatory Algebraic Specification \& Compilation of List Matching}, author = {Eelco Visser}, year = {1993}, month = {June}, tags = {transformation language, graph-rewriting, algebraic specification, transformation system, compiler, higher-order transformations, transformation, SDF, algebra, term rewriting, rewriting, ASF+SDF, graph transformation, reuse}, researchr = {http://researchr.org/publication/Visser%3A1993}, cites = {0}, citedby = {0}, school = {Department of Computer Science, University of Amsterdam}, address = {Amsterdam}, advisor = {Paul Klint}, } @article{Visser01:WRS, title = {A Survey of Strategies in Program Transformation Systems}, author = {Eelco Visser}, year = {2001}, doi = {http://www.elsevier.nl/locate/entcs/volume57.html}, tags = {program transformation, transformation language, software engineering, language engineering, design, transformation, rules, program optimization, survey, rewriting, rewriting strategies, strategies, graph-rewriting, software language engineering, reverse engineering, language design, transformation system, transformation engineering, compiler, programming languages, refactoring, Stratego, rule-based refactoring, programming, optimization, graph transformation, rule-based}, researchr = {http://researchr.org/publication/Visser01%3AWRS}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {57}, } @inproceedings{FischerV03:0, title = {Adding Concrete Syntax to a {Prolog}-Based Program Synthesis System (Extended Abstract)}, author = {Bernd Fischer and Eelco Visser}, year = {2003}, doi = {http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3018&spage=56}, tags = {program transformation, transformation language, abstract syntax, systematic-approach, concrete syntax, Prolog, model-to-model transformation, transformation, Stratego/XT, meta-model, feature-oriented programming, meta-objects, object-oriented programming, transformation system, meta programming, programming languages, subject-oriented programming, Stratego, programming, Meta-Environment, AutoBayes, concrete object syntax, rule-based, model transformation, source-to-source}, researchr = {http://researchr.org/publication/FischerV03%3A0}, cites = {0}, citedby = {0}, pages = {56-58}, booktitle = {LOPSTR}, } @inproceedings{GroenewegenHKV08-DSM, title = {When Frameworks Let You Down. {P}latform-Imposed Constraints on the Design and Evolution of Domain-Specific Languages}, author = {Danny M. Groenewegen and Zef Hemel and Lennart C. L. Kats and Eelco Visser}, year = {2008}, month = {October}, tags = {software evolution, language design, systematic-approach, application framework, constraints, WebDSL, framework, domain analysis, analysis, design, DSL, abstraction, static analysis, incremental, optimization, C++, domain-specific language, reuse}, researchr = {http://researchr.org/publication/GroenewegenHKV08-DSM}, cites = {0}, citedby = {2}, booktitle = {DSM}, } @techreport{Visser1997-CCG, title = {From Context-free Grammars with Priorities to Character Class Grammars}, author = {Eelco Visser}, year = {1997}, month = {October}, tags = {transformation language, transformation, grammar, translation, parsing, context-aware}, researchr = {http://researchr.org/publication/Visser1997-CCG}, cites = {17}, citedby = {0}, institution = {Programming Research Group, University of Amsterdam}, type = {Technical Report}, number = {P9717}, address = {Amsterdam, The Netherlands}, } @inproceedings{Vis00, title = {Language Independent Traversals for Program Transformation}, author = {Eelco Visser}, year = {2000}, month = {July}, tags = {program transformation, transformation language, pattern matching, syntax definition, code generation, abstract syntax, systematic-approach, compiler, higher-order transformations, logic programming, generic programming, programming languages, transformation, rules, Stratego, data-flow programming, programming, data-flow, traversal, logic, rule-based, data-flow language, pattern language, C++, domain-specific language}, researchr = {http://researchr.org/publication/Vis00}, cites = {0}, citedby = {0}, booktitle = {Workshop on Generic Programming (WGP 2000)}, } @inproceedings{KatsSV09, title = {Decorated Attribute Grammars: Attribute Evaluation Meets Strategic Programming}, author = {Lennart C. L. Kats and Anthony M. Sloane and Eelco Visser}, year = {2009}, doi = {http://dx.doi.org/10.1007/978-3-642-00722-4_11}, tags = {graph-rewriting, grammar, analysis, data-flow analysis, generic programming, programming languages, strategic programming, rules, Stratego, attribute grammars, Stratego/XT, data-flow programming, programming, data-flow, traversal, rewriting, rule-based, data-flow language, Aster, pattern language, C++, program analysis, etaps}, researchr = {http://researchr.org/publication/KatsSV09}, cites = {36}, citedby = {1}, pages = {142-157}, booktitle = {CC}, } @techreport{preprint-BravenboerDV-SCP-2009, title = {Preventing injection attacks with syntax embeddings}, author = {Martin Bravenboer and Eelco Dolstra and Eelco Visser}, year = {2010}, month = {July}, tags = {programming languages, query language, embedded software, XML, systematic-approach, XML Schema, programming, injection attack, grammar, SQL, context-aware, Java, generic programming}, researchr = {http://researchr.org/publication/preprint-BravenboerDV-SCP-2009}, cites = {0}, citedby = {0}, type = {Preprint}, } @inproceedings{KatsV10a, title = {The {Spoofax} language workbench}, author = {Lennart C. L. Kats and Eelco Visser}, year = {2010}, doi = {http://doi.acm.org/10.1145/1869542.1869592}, tags = {program transformation, Spoofax, transformation language, workbench, programming languages, language workbench, syntax definition, transformation, code generation, Meta-Environment, meta programming, C++, domain-specific language}, researchr = {http://researchr.org/publication/KatsV10a}, cites = {0}, citedby = {0}, pages = {237-238}, booktitle = {OOPSLA}, } @techreport{WijngaardenVisser2003, title = {Program Transformation Mechanics. A Classification of Mechanisms for Program Transformation with a Survey of Existing Transformation Systems}, author = {J. van Wijngaarden and Eelco Visser}, year = {2003}, tags = {program transformation, transformation, transformation system, survey, classification}, researchr = {http://researchr.org/publication/WijngaardenVisser2003}, cites = {0}, citedby = {1}, institution = {Institute of Information and Computing Sciences, Utrecht University}, number = {UU-CS-2003-048}, address = {Utrecht, The Netherlands}, } @techreport{DeJongeVisser2012-TUD-SERG-2011-027, title = {An Algorithm for Layout Preservation in Refactoring Transformations}, author = {Maartje de Jonge and Eelco Visser}, year = {2011}, month = {August}, tags = {points-to analysis, abstract syntax, layout, open-source, analysis, context-aware, model refactoring, model-to-model transformation, transformation, refactoring, rules, rule-based refactoring, rule-based, model transformation, source-to-source}, researchr = {http://researchr.org/publication/DeJongeVisser2012-TUD-SERG-2011-027}, cites = {0}, citedby = {0}, institution = {Delft University of Technology}, number = {TUD-SERG-2011-027}, address = {Delft, The Netherlands}, } @article{DolstraV02, title = {Building Interpreters with Rewriting Strategies}, author = {Eelco Dolstra and Eelco Visser}, year = {2002}, doi = {http://www.elsevier.com/gej-ng/31/29/23/117/52/show/Products/notes/index.htt#007}, tags = {graph-rewriting, interpreters, pattern matching, systematic-approach, interpreter, dynamic rewrite rules, programming languages, rules, Stratego, laziness, semantics, program optimization, Stratego/XT, programming, rewriting, optimization, rule-based, dynamic rules, parallel programming, pattern language, rewriting strategies, reuse}, researchr = {http://researchr.org/publication/DolstraV02}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {65}, number = {3}, } @inproceedings{Visser-SCAM-2005, title = {Transformations for Abstractions}, author = {Eelco Visser}, year = {2005}, month = {October}, doi = {http://dx.doi.org/10.1109/SCAM.2005.26}, tags = {program transformation, transformation language, interpreters, extensible languages, meta programming, programming languages, transformation, Stratego, abstraction, Stratego/XT, case study, programming, Meta-Environment, extensible language}, researchr = {http://researchr.org/publication/Visser-SCAM-2005}, cites = {0}, citedby = {0}, booktitle = {SCAM}, } @inproceedings{KV07.spoofax, title = {Spoofax: An Interactive Development Environment for Program Transformation with Stratego/XT}, author = {Karl Trygve Kalleberg and Eelco Visser}, year = {2007}, month = {March}, tags = {program transformation, Spoofax, meta-objects, model-to-model transformation, transformation, Stratego, Meta-Environment, meta programming, meta-model, model transformation, model-driven development}, researchr = {http://researchr.org/publication/KV07.spoofax}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the Seventh Workshop on Language Descriptions, Tools and Applications (LDTA 2007)}, } @article{BravenboerKVV08, title = {{Stratego/XT 0.17}. {A} language and toolset for program transformation}, author = {Martin Bravenboer and Karl Trygve Kalleberg and Rob Vermaas and Eelco Visser}, year = {2008}, doi = {http://dx.doi.org/10.1016/j.scico.2007.11.003}, tags = {program transformation, transformation language, concrete syntax, transformation, rules, abstraction, Stratego/XT, rewriting, feature-oriented programming, rewriting strategies, reuse, graph-rewriting, meta-objects, object-oriented programming, transformation system, meta programming, context-aware, programming languages, control systems, DSL, subject-oriented programming, Stratego, reusable components, programming, Meta-Environment, completeness, concrete object syntax, graph transformation, rule-based, pattern language}, researchr = {http://researchr.org/publication/BravenboerKVV08}, cites = {0}, citedby = {7}, journal = {SCP}, volume = {72}, number = {1-2}, pages = {52-70}, } @techreport{Vis97.sglr, title = {Scannerless Generalized-{LR} Parsing}, author = {Eelco Visser}, year = {1997}, month = {July}, tags = {systematic-approach, grammar, analysis, parsing, context-aware, SGLR, disambiguation, GLR, scannerless parsing, SDF, rules, GLR parsing, ASF+SDF, rule-based, parsing algorithm, lexical syntax}, researchr = {http://researchr.org/publication/Vis97.sglr}, cites = {0}, citedby = {4}, institution = {Programming Research Group, University of Amsterdam}, number = {P9707}, } @inproceedings{LV97, title = {Specification of Rewriting Strategies}, author = {Bas Luttik and Eelco Visser}, year = {1997}, month = {November}, tags = {transformation language, graph-rewriting, transformation system, composition, traversal combinators, control systems, transformation, SDF, rules, Stratego, case study, traversal, rewriting, term rewriting, ASF+SDF, rule-based, graph transformation, rewriting strategies}, researchr = {http://researchr.org/publication/LV97}, cites = {0}, citedby = {0}, booktitle = {ASF+SDF}, } @inproceedings{HemelVisser2011, title = {Declaratively Programming the Mobile Web with Mobl}, author = {Zef Hemel and Eelco Visser}, year = {2011}, doi = {http://dx.doi.org/10.1145/2048066.2048121}, tags = {code generation, design, program optimization, meta-model, interaction design, data-flow, mobile, logic, data-flow language, web applications, domain-specific language, query language, language design, constraints, meta programming, logic programming, programming languages, mobile code, modeling, language modeling, data-flow programming, programming, Meta-Environment, optimization, modeling language, rule-based, pattern language}, researchr = {http://researchr.org/publication/HemelVisser2011}, cites = {0}, citedby = {0}, pages = {695-712}, booktitle = {OOPSLA}, } @inproceedings{KatsVermaasVisser2011, title = {Integrated Language Definition Testing. Enabling Test-Driven Language Development}, author = {Lennart C. L. Kats and Rob Vermaas and Eelco Visser}, year = {2011}, doi = {http://dx.doi.org/10.1145/2048066.2048080}, tags = {Spoofax, model editor, syntax definition, language design, interpreter, compiler, design, testing, writing, semantics, Meta-Environment, meta-model, maintenance, reliability, model-driven development, C++, domain-specific language, reuse}, researchr = {http://researchr.org/publication/KatsVermaasVisser2011}, cites = {0}, citedby = {0}, pages = {139-154}, booktitle = {OOPSLA}, } @inproceedings{HemelV09, title = {{PIL}: A Platform Independent Language for Retargetable {DSLs}}, author = {Zef Hemel and Eelco Visser}, year = {2009}, doi = {http://dx.doi.org/10.1007/978-3-642-12107-4_17}, tags = {DSL}, researchr = {http://researchr.org/publication/HemelV09}, cites = {0}, citedby = {1}, pages = {224-243}, booktitle = {SLE}, } @inproceedings{DeJongeVisser2012, title = {An Algorithm for Layout Preservation in Refactoring Transformations}, author = {Maartje de Jonge and Eelco Visser}, year = {2012}, tags = {points-to analysis, abstract syntax, layout, open-source, analysis, context-aware, model refactoring, model-to-model transformation, transformation, refactoring, rules, rule-based refactoring, rule-based, model transformation, source-to-source}, researchr = {http://researchr.org/publication/DeJongeVisser2012}, cites = {0}, citedby = {0}, booktitle = {SLE}, } @techreport{BravenboerVisser2001, title = {Guiding visitors: separating navigation from computation}, author = {Martin Bravenboer and Eelco Visser}, year = {2001}, tags = {meta-objects, object-oriented programming, visitor, systematic-approach, meta programming, e-science, Java, caching, generic programming, programming languages, subject-oriented programming, programming, Meta-Environment, traversal, rule-based, pattern language, feature-oriented programming, reuse}, researchr = {http://researchr.org/publication/BravenboerVisser2001}, cites = {0}, citedby = {0}, institution = {Department of Information and Computing Sciences, Utrecht University}, number = {UU-CS-2001-42}, } @article{KatsKV10, title = {Domain-Specific Languages for Composable Editor Plugins}, author = {Lennart C. L. Kats and Karl Trygve Kalleberg and Eelco Visser}, year = {2010}, doi = {http://dx.doi.org/10.1016/j.entcs.2010.08.038}, tags = {C++, domain-specific language}, researchr = {http://researchr.org/publication/KatsKV10}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {253}, number = {7}, pages = {149-163}, } @inproceedings{FischerV03, title = {Retrofitting the AutoBayes Program Synthesis System with Concrete Syntax}, author = {Bernd Fischer and Eelco Visser}, year = {2003}, doi = {http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3016&spage=239}, tags = {XML, abstract syntax, code generation, systematic-approach, concrete syntax, language embedding, program synthesis, analysis, data-flow analysis, generic programming, Prolog, SDF, Stratego/XT, meta-model, data-flow, ASF+SDF, data-flow language, feature-oriented programming, meta-objects, object-oriented programming, constraints, meta programming, migration, programming languages, subject-oriented programming, Stratego, XML Schema, data-flow programming, programming, Meta-Environment, AutoBayes, concrete object syntax, rule-based, program analysis}, researchr = {http://researchr.org/publication/FischerV03}, cites = {0}, citedby = {0}, pages = {239-253}, booktitle = {dagstuhl}, } @article{RamalingamV11, title = {Special issue on Partial Evaluation and Program Manipulation (selected papers from PEPM 2007)}, author = {Ganesan Ramalingam and Eelco Visser}, year = {2011}, month = {June}, doi = {http://dx.doi.org/10.1016/j.scico.2011.01.001}, tags = {partial evaluation}, researchr = {http://researchr.org/publication/RamalingamV11}, cites = {0}, citedby = {0}, journal = {SCP}, volume = {76}, number = {6}, pages = {467-468}, } @inproceedings{OlmosV03, title = {Turning Dynamic Typing into Static Typing by Program Specialization in a Compiler Front-end for {Octave}}, author = {Karina Olmos and Eelco Visser}, year = {2003}, doi = {http://csdl.computer.org/comp/proceedings/scam/2003/2005/00/20050141abs.htm}, tags = {program transformation, transformation language, language design, transformation system, interpreter, type checking, program specialization, compiler, higher-order transformations, type inference, programming languages, type system, transformation, Stratego, Stratego/XT, dynamic typing, Octave}, researchr = {http://researchr.org/publication/OlmosV03}, cites = {0}, citedby = {0}, pages = {141-150}, booktitle = {SCAM}, } @article{SloaneKV10, title = {A Pure Object-Oriented Embedding of Attribute Grammars}, author = {Anthony M. Sloane and Lennart C. L. Kats and Eelco Visser}, year = {2010}, doi = {http://dx.doi.org/10.1016/j.entcs.2010.08.043}, tags = {meta-objects, attribute grammars, grammar, Meta-Environment, C++}, researchr = {http://researchr.org/publication/SloaneKV10}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {253}, number = {7}, pages = {205-219}, } @inproceedings{Visser99, title = {Strategic Pattern Matching}, author = {Eelco Visser}, year = {1999}, doi = {http://link.springer.de/link/service/series/0558/bibs/1631/16310030.htm}, tags = {overlays, transformation language, graph-rewriting, pattern matching, higher-order transformations, transformation, rules, Stratego, Stratego/XT, Strategic term rewriting, data-flow, traversal, rewriting, term rewriting, rule-based, data-flow language, graph transformation, views, pattern language, rewriting strategies, domain-specific language}, researchr = {http://researchr.org/publication/Visser99}, cites = {0}, citedby = {0}, pages = {30-44}, booktitle = {RTA}, } @article{JongeVV01, title = {{XT}: a bundle of program transformation tools}, author = {Merijn de Jonge and Eelco Visser and Joost Visser}, year = {2001}, doi = {http://dx.doi.org/10.1016/S1571-0661(04)80921-6}, tags = {program transformation, model-to-model transformation, transformation, Stratego, transformation system, Stratego/XT, programming, open-source, rule-based, model transformation, model-driven development, source-to-source}, researchr = {http://researchr.org/publication/JongeVV01}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {44}, number = {2}, } @inproceedings{KatsVKV2012, title = {Software Development Environments on the Web: A Research Agenda}, author = {Lennart C. L. Kats and Richard Vogelij and Karl Trygve Kalleberg and Eelco Visser}, year = {2012}, doi = {http://dx.doi.org/10.1145/2384592.2384603}, tags = {web service, Meta-Environment, web services, architecture, rule-based, C++, software architecture}, researchr = {http://researchr.org/publication/KatsVKV2012}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the 11th SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software (Onward 2012)}, } @inproceedings{BravenboerV07, title = {Designing Syntax Embeddings and Assimilations for Language Libraries}, author = {Martin Bravenboer and Eelco Visser}, year = {2007}, doi = {http://dx.doi.org/10.1007/978-3-540-69073-3_5}, tags = {transformation language, syntax embedding, language libraries, DSL, syntax definition, transformation, language design, architecture, design, assimilation, domain-specific language}, researchr = {http://researchr.org/publication/BravenboerV07}, cites = {24}, citedby = {1}, pages = {34-46}, booktitle = {MoDELS}, } @inproceedings{KatsKV10-0, title = {Interactive Disambiguation of Meta Programs with Concrete Object Syntax}, author = {Lennart C. L. Kats and Karl Trygve Kalleberg and Eelco Visser}, year = {2010}, doi = {http://dx.doi.org/10.1007/978-3-642-19440-5_22}, tags = {meta-objects, object-oriented programming, abstract syntax, grammar, concrete syntax, meta programming, open-source, disambiguation, programming languages, subject-oriented programming, programming, Meta-Environment, meta-model, concrete object syntax, tagging, rule-based, model-driven development, C++, feature-oriented programming, source-to-source}, researchr = {http://researchr.org/publication/KatsKV10-0}, cites = {0}, citedby = {0}, pages = {327-336}, booktitle = {SLE}, } @inproceedings{KatsVW10, title = {Pure and declarative syntax definition: paradise lost and regained}, author = {Lennart C. L. Kats and Eelco Visser and Guido Wachsmuth}, year = {2010}, doi = {http://doi.acm.org/10.1145/1869459.1869535}, tags = {software evolution, syntax definition, parsing, compiler, composition, C++, parsing algorithm}, researchr = {http://researchr.org/publication/KatsVW10}, cites = {0}, citedby = {0}, pages = {918-932}, booktitle = {OOPSLA}, } @inproceedings{DeJongeVisser2012-LDTA, title = {A Language Generic Solution for Name Binding Preservation in Refactorings}, author = {Maartje de Jonge and Eelco Visser}, year = {2012}, doi = {http://dx.doi.org/10.1145/2427048.2427050}, tags = {points-to analysis, variable binding, refactoring, refinement, semantics, systematic-approach, open-source, analysis, traversal, compiler, source-to-source, reuse}, researchr = {http://researchr.org/publication/DeJongeVisser2012-LDTA}, cites = {0}, citedby = {0}, booktitle = {LDTA}, } @techreport{Visser-1997-SDF, title = {A Family of Syntax Definition Formalisms}, author = {Eelco Visser}, year = {1997}, month = {August}, tags = {scannerless parsing, syntax definition, SDF, grammar, parsing, ASF+SDF, context-aware, scannerless, design, lexical syntax, disambiguation}, researchr = {http://researchr.org/publication/Visser-1997-SDF}, cites = {0}, citedby = {2}, institution = {Programming Research Group, University of Amsterdam}, number = {P9706}, } @inproceedings{KatsV10, title = {The {Spoofax} language workbench: rules for declarative specification of languages and {IDEs}}, author = {Lennart C. L. Kats and Eelco Visser}, year = {2010}, doi = {http://doi.acm.org/10.1145/1869459.1869497}, tags = {program transformation, transformation language, Spoofax, code generation, code completion, Eclipse, model-to-model transformation, transformation, rules, meta-model, rewriting, domain-specific language, reuse, workbench, graph-rewriting, meta-objects, model editor, meta programming, parsing, architecture, programming languages, language workbench, semantics, programming, Meta-Environment, graph transformation, rule-based, model-driven development, model transformation, C++}, researchr = {http://researchr.org/publication/KatsV10}, cites = {0}, citedby = {0}, pages = {444-463}, booktitle = {OOPSLA}, } @inproceedings{BravenboerDV07, title = {Preventing injection attacks with syntax embeddings}, author = {Martin Bravenboer and Eelco Dolstra and Eelco Visser}, year = {2007}, doi = {http://doi.acm.org/10.1145/1289971.1289975}, tags = {query language, XML, systematic-approach, injection attack, grammar, language embedding, security, preventing injection attacks, Java, generic programming, programming languages, syntax embedding, DSL, SDF, embedded software, XML Schema, programming, ASF+SDF, SQL}, researchr = {http://researchr.org/publication/BravenboerDV07}, cites = {0}, citedby = {4}, pages = {3-12}, booktitle = {GPCE}, } @inproceedings{GroenewegenHKV08, title = {WebDSL: a domain-specific language for dynamic web applications}, author = {Danny M. Groenewegen and Zef Hemel and Lennart C. L. Kats and Eelco Visser}, year = {2008}, doi = {http://doi.acm.org/10.1145/1449814.1449858}, tags = {WebDSL, language engineering, access control, workflow, web engineering, modeling, DSL, abstraction, language modeling, Meta-Environment, meta-model, logic, modeling language, C++, web applications, domain-specific language, model-driven engineering}, researchr = {http://researchr.org/publication/GroenewegenHKV08}, cites = {0}, citedby = {0}, pages = {779-780}, booktitle = {OOPSLA}, } @inproceedings{ErdwegKRKOV11a, title = {SugarJ: library-based language extensibility}, author = {Sebastian Erdweg and Lennart C. L. Kats and Tillmann Rendel and Christian Kästner and Klaus Ostermann and Eelco Visser}, year = {2011}, doi = {http://doi.acm.org/10.1145/2048147.2048199}, tags = {rule-based, C++, extensible language}, researchr = {http://researchr.org/publication/ErdwegKRKOV11a}, cites = {0}, citedby = {0}, pages = {187-188}, booktitle = {Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2011, part of SPLASH 2011, Portland, OR, USA, October 22 - 27, 2011}, } @inproceedings{BaggeKHV03, title = {Design of the {CodeBoost} Transformation System for Domain-Specific Optimisation of {C++} Programs}, author = {Anya Helene Bagge and Karl Trygve Kalleberg and Magne Haveraaen and Eelco Visser}, year = {2003}, doi = {http://csdl.computer.org/comp/proceedings/scam/2003/2005/00/20050065abs.htm}, tags = {program transformation, transformation language, points-to analysis, application framework, analysis, design, model-to-model transformation, transformation, rules, Stratego/XT, rewriting, domain-specific language, graph-rewriting, language design, transformation system, open-source, domain analysis, parsing, compiler, CodeBoost, programming languages, embedded software, Stratego, graph transformation, rule-based, model transformation, C++, program analysis, source-to-source}, researchr = {http://researchr.org/publication/BaggeKHV03}, cites = {0}, citedby = {0}, pages = {65}, booktitle = {SCAM}, } @inproceedings{KatsVisser-SCAM-2010, title = {Encapsulating Software Platform Logic by Aspect-Oriented Programming: A Case Study in Using Aspects for Language Portability}, author = {Lennart C. L. Kats and Eelco Visser}, year = {2010}, tags = {program transformation, transformation language, object-oriented programming, transformation system, systematic-approach, compiler, Java, logic programming, programming languages, transformation, subject-oriented programming, Stratego, programming, case study, translation, weaving, logic, rule-based, aspect oriented programming, C++, feature-oriented programming, domain-specific language}, researchr = {http://researchr.org/publication/KatsVisser-SCAM-2010}, cites = {0}, citedby = {0}, booktitle = {SCAM}, } @inproceedings{HemelV11a, title = {Mobl: the new language of the mobile web}, author = {Zef Hemel and Eelco Visser}, year = {2011}, doi = {http://doi.acm.org/10.1145/2048147.2048159}, tags = {mobile}, researchr = {http://researchr.org/publication/HemelV11a}, cites = {0}, citedby = {0}, pages = {23-24}, booktitle = {Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2011, part of SPLASH 2011, Portland, OR, USA, October 22 - 27, 2011}, } @book{DslEngineering2013, title = {DSL Engineering: Designing, Implementing and Using Domain-Specific Languages}, author = {Markus Völter and Sebastian Benz and Christian Dietrich and Birgit Engelmann Mats Helander and Lennart C. L. Kats and Eelco Visser and Guido Wachsmuth}, year = {2013}, tags = {DSL, domain-specific language}, researchr = {http://researchr.org/publication/DslEngineering2013}, cites = {0}, citedby = {0}, publisher = {dslbook.org}, } @proceedings{VoelterVisserDimensions2011, title = {Dimensions of DSL Design}, author = {Markus Völter and Eelco Visser}, year = {2011}, tags = {separation of concerns, software language engineering, language design, software engineering, language engineering, context-aware, design, coverage, DSL, abstraction, semantics, language modeling, case study, Meta-Environment, meta-model, completeness, modeling language, domain-specific language, model-driven engineering}, researchr = {http://researchr.org/publication/VoelterVisserDimensions2011}, cites = {0}, citedby = {0}, booktitle = {Dimensions of DSL Design}, } @techreport{TUD-SERG-2008-042, title = {Designing Syntax Embeddings and Assimilations for Language Libraries}, author = {Martin Bravenboer and Eelco Visser}, year = {2008}, tags = {transformation language, DSL, transformation, language design, architecture, design, assimilation, domain-specific language}, researchr = {http://researchr.org/publication/TUD-SERG-2008-042}, cites = {0}, citedby = {0}, institution = {Software Engineering Research Group, Delft University of Technology}, number = {TUD-SERG-2008-042}, } @inproceedings{KKV08, title = {Generating Editors for Embedded Languages. Integrating SGLR into IMP}, author = {Lennart C. L. Kats and Karl Trygve Kalleberg and Eelco Visser}, year = {2008}, month = {April}, tags = {Spoofax, query language, syntax definition, code generation, parsing, SGLR, scannerless parsing, Eclipse, SDF, abstraction, Meta-Environment, completeness, ASF+SDF, rule-based, SQL, C++, domain-specific language, extensible language}, researchr = {http://researchr.org/publication/KKV08}, cites = {0}, citedby = {1}, booktitle = {LDTA}, } @inproceedings{BrandV95, title = {The {Asf+Sdf} Meta-Environment Documentation Tools for Free!}, author = {Mark G. J. van den Brand and Eelco Visser}, year = {1995}, doi = {http://dx.doi.org/10.1007/3-540-59293-8_242}, tags = {meta-objects, SDF, Meta-Environment, software documentation, meta-model, ASF+SDF, documentation, pretty-printing}, researchr = {http://researchr.org/publication/BrandV95}, cites = {0}, citedby = {0}, pages = {803-804}, booktitle = {tapsoft}, } @inproceedings{BravenboerTV06, title = {Declarative, formal, and extensible syntax definition for {AspectJ}}, author = {Martin Bravenboer and Éric Tanter and Eelco Visser}, year = {2006}, doi = {http://doi.acm.org/10.1145/1167473.1167491}, tags = {language composition, AspectJ, syntax definition, object-oriented programming, language design, design complexity, grammar, parsing, compiler, context-aware, Java, composition, design, SGLR, programming languages, design research, scannerless parsing, subject-oriented programming, SDF, programming, ASF+SDF, aspect oriented programming, feature-oriented programming, lexical syntax, extensible language}, researchr = {http://researchr.org/publication/BravenboerTV06}, cites = {0}, citedby = {1}, pages = {209-228}, booktitle = {OOPSLA}, } @inproceedings{KKV09, title = {Domain-Specific Languages for Composable Editor Plugins}, author = {Lennart C. L. Kats and Karl Trygve Kalleberg and Eelco Visser}, year = {2010}, month = {sept}, doi = {http://dx.doi.org/10.1016/j.entcs.2010.08.038}, tags = {Spoofax, application framework, composition, IDE, SGLR, Eclipse, SDF, rules, meta-model, ASF+SDF, web applications, domain-specific language, meta-objects, model editor, language composition, syntax definition, WebDSL, grammar, meta programming, parsing, web services, semantic web, programming languages, DSL, web service, Stratego, semantics, programming, Meta-Environment, rule-based, C++}, researchr = {http://researchr.org/publication/KKV09}, cites = {0}, citedby = {2}, booktitle = {Proceedings of The Ninth Workshop on Language Descriptions, Tools, and Applications (LDTA 2009)}, } @article{BravenboerDV-SCP-2010, title = {Preventing injection attacks with syntax embeddings}, author = {Martin Bravenboer and Eelco Dolstra and Eelco Visser}, year = {2010}, month = {July}, doi = {http://dx.doi.org/10.1016/j.scico.2009.05.004}, tags = {programming languages, query language, embedded software, XML, systematic-approach, XML Schema, programming, injection attack, grammar, SQL, context-aware, Java, generic programming}, researchr = {http://researchr.org/publication/BravenboerDV-SCP-2010}, cites = {41}, citedby = {0}, journal = {SCP}, volume = {75}, number = {7}, pages = {473-495}, } @article{GroenewegenHV10, title = {Separation of Concerns and Linguistic Integration in {WebDSL}}, author = {Danny M. Groenewegen and Zef Hemel and Eelco Visser}, year = {2010}, doi = {http://dx.doi.org/10.1109/MS.2010.92}, tags = {separation of concerns, WebDSL}, researchr = {http://researchr.org/publication/GroenewegenHV10}, cites = {0}, citedby = {0}, journal = {IEEE Software}, volume = {27}, number = {5}, pages = {31-37}, } @inproceedings{DolstraBV05, title = {Service configuration management}, author = {Eelco Dolstra and Martin Bravenboer and Eelco Visser}, year = {2005}, doi = {http://doi.acm.org/10.1145/1109128.1109135}, tags = {Nix, programming languages, software components, software component, systematic-approach, software configuration, service configuration management, deployment, software deployment, context-aware, SCM}, researchr = {http://researchr.org/publication/DolstraBV05}, cites = {0}, citedby = {0}, pages = {83-98}, booktitle = {SCM}, } @article{BouwersBV08, title = {Grammar Engineering Support for Precedence Rule Recovery and Compatibility Checking}, author = {Eric Bouwers and Martin Bravenboer and Eelco Visser}, year = {2008}, doi = {http://dx.doi.org/10.1016/j.entcs.2008.03.046}, tags = {syntax definition, systematic-approach, grammar, parsing, language engineering, compiler, precedence rule, migration, PHP, programming languages, grammar engineering, YACC, scannerless parsing, SDF, rules, Stratego, semantics, Stratego/XT, programming, priority, operational semantics, ASF+SDF, rule-based, C++}, researchr = {http://researchr.org/publication/BouwersBV08}, cites = {0}, citedby = {1}, journal = {ENTCS}, volume = {203}, number = {2}, pages = {85-101}, } @article{KallebergV06, title = {Combining Aspect-Oriented and Strategic Programming}, author = {Karl Trygve Kalleberg and Eelco Visser}, year = {2006}, doi = {http://dx.doi.org/10.1016/j.entcs.2005.06.035}, tags = {program transformation, transformation language, transformation, rules, Stratego/XT, data-flow, exceptions, rewriting, term rewriting, data-flow language, aspect oriented programming, feature-oriented programming, graph-rewriting, debugging, programming paradigms, object-oriented programming, transformation system, type checking, programming languages, type system, strategic programming, subject-oriented programming, Stratego, data-flow programming, transformation aspects, Strategic term rewriting, programming, graph transformation, rule-based}, researchr = {http://researchr.org/publication/KallebergV06}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {147}, number = {1}, pages = {5-30}, } @inproceedings{DolstraVJ04, title = {Imposing a Memory Management Discipline on Software Deployment}, author = {Eelco Dolstra and Eelco Visser and Merijn de Jonge}, year = {2004}, doi = {http://csdl.computer.org/comp/proceedings/icse/2004/2163/00/21630583abs.htm}, tags = {Nix, program verification, software components, systematic-approach, deployment, meta programming, analysis, generic programming, programming languages, software component, language modeling, memory management, programming, Meta-Environment, meta-model, completeness, software deployment, rule-based, modeling language, program analysis}, researchr = {http://researchr.org/publication/DolstraVJ04}, cites = {0}, citedby = {0}, pages = {583-592}, booktitle = {ICSE}, } @inproceedings{GeestVDV08, title = {Generating Version Convertors for Domain-Specific Languages}, author = {Gerardo de Geest and Sander Vermolen and Arie van Deursen and Eelco Visser}, year = {2008}, doi = {http://dx.doi.org/10.1109/WCRE.2008.50}, tags = {meta-objects, software evolution, systematic-approach, convertors, language, evolution, modeling, dsl-tools, DSL, language modeling, abstraction, case study, Meta-Environment, meta-model, modeling language, model-driven development, domain-specific language}, researchr = {http://researchr.org/publication/GeestVDV08}, cites = {0}, citedby = {0}, pages = {197-201}, booktitle = {wcre}, } @inproceedings{Vis97.opt, title = {A Case Study in Optimizing Parsing Schemata by Disambiguation Filters}, author = {Eelco Visser}, year = {1997}, month = {September}, tags = {programming languages, XML, program optimization, XML Schema, application framework, case study, grammar, parsing, optimization, context-aware, parsing algorithm, disambiguation}, researchr = {http://researchr.org/publication/Vis97.opt}, cites = {0}, citedby = {0}, pages = {210-224}, booktitle = {International Workshop on Parsing Technology (IWPT 1997)}, } @inproceedings{BravenboerKVV06, title = {{Stratego/XT 0.16}: components for transformation systems}, author = {Martin Bravenboer and Karl Trygve Kalleberg and Rob Vermaas and Eelco Visser}, year = {2006}, doi = {http://doi.acm.org/10.1145/1111542.1111558}, tags = {program transformation, transformation language, concrete syntax, transformation, rules, abstraction, Stratego/XT, rewriting, rewriting strategies, feature-oriented programming, reuse, graph-rewriting, meta-objects, object-oriented programming, transformation system, meta programming, context-aware, programming languages, control systems, subject-oriented programming, Stratego, reusable components, Meta-Environment, completeness, concrete object syntax, graph transformation, rule-based, pattern language}, researchr = {http://researchr.org/publication/BravenboerKVV06}, cites = {0}, citedby = {0}, pages = {95-99}, booktitle = {PEPM}, } @inproceedings{DolstraJV04, title = {Nix: A Safe and Policy-Free System for Software Deployment}, author = {Eelco Dolstra and Merijn de Jonge and Eelco Visser}, year = {2004}, doi = {http://www.usenix.org/publications/library/proceedings/lisa04/tech/dolstra.html}, tags = {Nix, software components, software component, deployment, software deployment}, researchr = {http://researchr.org/publication/DolstraJV04}, cites = {0}, citedby = {0}, pages = {79-92}, booktitle = {lisa}, } @inproceedings{Lindeman-GPCE-2011, title = {Declaratively Defining Domain-Specific Language Debuggers}, author = {Ricky T. Lindeman and Lennart C. L. Kats and Eelco Visser}, year = {2011}, doi = {http://dx.doi.org/10.1145/2047862.2047885}, tags = {program transformation, Spoofax, workbench, transformation language, debugging, meta-objects, systematic-approach, WebDSL, meta programming, programming languages, language workbench, model-to-model transformation, writing, transformation, Stratego, programming, case study, Meta-Environment, meta-model, rule-based, model transformation, C++, domain-specific language}, researchr = {http://researchr.org/publication/Lindeman-GPCE-2011}, cites = {0}, citedby = {0}, pages = {127-136}, booktitle = {GPCE}, } @inproceedings{VisserBT98, title = {Building Program Optimizers with Rewriting Strategies}, author = {Eelco Visser and Zine-El-Abidine Benaissa and Andrew P. Tolmach}, year = {1998}, doi = {http://doi.acm.org/10.1145/289423.289425}, tags = {program transformation, transformation language, graph-rewriting, variable binding, meta programming, composition, higher-order transformations, programming languages, transformation, rules, Stratego, semantics, program optimization, Stratego/XT, Meta-Environment, rewriting, optimization, term rewriting, rule-based, graph transformation, C++, rewriting strategies}, researchr = {http://researchr.org/publication/VisserBT98}, cites = {0}, citedby = {5}, pages = {13-26}, booktitle = {ICFP}, } @article{DeJongeKSV2012, title = {Natural and Flexible Error Recovery for Generated Modular Language Environments}, author = {Maartje de Jonge and Lennart C. L. Kats and Emma Soderberg and Eelco Visser}, year = {2012}, month = {December}, doi = {http://dx.doi.org/10.1145/2400676.2400678}, tags = {systematic-approach, grammar, layout, parsing, composition, context-aware, scannerless parsing, rules, semantics, Meta-Environment, rule-based, C++, parsing algorithm}, researchr = {http://researchr.org/publication/DeJongeKSV2012}, cites = {0}, citedby = {0}, journal = {TOPLAS}, volume = {34}, number = {4}, } @inproceedings{JongeNKV09, title = {Natural and Flexible Error Recovery for Generated Parsers}, author = {Maartje de Jonge and Emma Nilsson-Nyman and Lennart C. L. Kats and Eelco Visser}, year = {2009}, doi = {http://dx.doi.org/10.1007/978-3-642-12107-4_16}, tags = {search, systematic-approach, grammar, parsing, Java, context-aware, SGLR, Eclipse, rules, semantics, search suggestions, rule-based, C++, error recovery}, researchr = {http://researchr.org/publication/JongeNKV09}, cites = {0}, citedby = {0}, pages = {204-223}, booktitle = {SLE}, } @inproceedings{VanRestWSSV2013, title = {Robust Real-Time Synchronization between Textual and Graphical Editors}, author = {Oskar van Rest and Guido Wachsmuth and Jim Steel and Jörn Guy Süss and Eelco Visser}, year = {2013}, month = {June}, tags = {Spoofax, workbench, synchronization, parsing}, researchr = {http://researchr.org/publication/VanRestWSSV2013}, cites = {0}, citedby = {0}, booktitle = {International Conference on Model Transformation (ICMT 2013)}, } @techreport{preprint-VanRestWSSV2013, title = {Robust Real-Time Synchronization between Textual and Graphical Editors}, author = {Oskar van Rest and Guido Wachsmuth and Jim Steel and Jörn Guy Süss and Eelco Visser}, year = {2013}, month = {June}, researchr = {http://researchr.org/publication/preprint-VanRestWSSV2013}, cites = {0}, citedby = {0}, type = {Preprint}, } @article{DuranRBBEKKMSV09, title = {The Second Rewrite Engines Competition}, author = {Francisco Durán and Manuel Roldán and Emilie Balland and Mark G. J. van den Brand and Steven Eker and Karl Trygve Kalleberg and Lennart C. L. Kats and Pierre-Etienne Moreau and Ruslan Shevchenko and Eelco Visser}, year = {2009}, doi = {http://dx.doi.org/10.1016/j.entcs.2009.05.025}, tags = {graph-rewriting, rewrite engine, SDF, Stratego, rewriting logic, rewriting, logic, term rewriting, ASF+SDF, C++, rewriting strategies}, researchr = {http://researchr.org/publication/DuranRBBEKKMSV09}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {238}, number = {3}, pages = {281-291}, } @inproceedings{GroenewegenV09-0, title = {Weaving web applications with WebDSL: (demonstration)}, author = {Danny M. Groenewegen and Eelco Visser}, year = {2009}, doi = {http://doi.acm.org/10.1145/1639950.1640020}, tags = {WebDSL, compiler, Java, access control, workflow, consistency, modeling, language modeling, data validation, Meta-Environment, meta-model, data-flow, completeness, weaving, data-flow language, modeling language, model-driven development, web applications, domain-specific language}, researchr = {http://researchr.org/publication/GroenewegenV09-0}, cites = {0}, citedby = {0}, pages = {797-798}, booktitle = {OOPSLA}, } @inproceedings{BrandSVV02, title = {Disambiguation Filters for Scannerless Generalized {LR} Parsers}, author = {Mark G. J. van den Brand and Jeroen Scheerder and Jurgen J. Vinju and Eelco Visser}, year = {2002}, doi = {http://link.springer.de/link/service/series/0558/bibs/2304/23040143.htm}, tags = {scannerless parsing, GLR, syntax definition, SDF, grammar, parsing, GLR parsing, ASF+SDF, context-aware, scannerless, SGLR, lexical syntax, disambiguation}, researchr = {http://researchr.org/publication/BrandSVV02}, cites = {0}, citedby = {4}, pages = {143-158}, booktitle = {CC}, } @inproceedings{BravenboerV02, title = {Rewriting Strategies for Instruction Selection}, author = {Martin Bravenboer and Eelco Visser}, year = {2002}, doi = {http://link.springer.de/link/service/series/0558/bibs/2378/23780237.htm}, tags = {program transformation, transformation language, graph-rewriting, programming paradigms, code generation, compilation, instruction selection, programming languages, transformation, rules, Stratego, program optimization, Stratego/XT, programming, rewriting, optimization, term rewriting, rule-based, graph transformation, compilers, rewriting strategies}, researchr = {http://researchr.org/publication/BravenboerV02}, cites = {0}, citedby = {0}, pages = {237-251}, booktitle = {RTA}, } @inproceedings{KatsKV-SLE-2010, title = {Interactive Disambiguation of Meta Programs with Concrete Object Syntax}, author = {Lennart C. L. Kats and Karl Trygve Kalleberg and Eelco Visser}, year = {2011}, tags = {Spoofax, meta-objects, discoverability, object-oriented programming, abstract syntax, grammar, concrete syntax, meta programming, open-source, architecture, IDE, disambiguation, programming languages, subject-oriented programming, programming, Meta-Environment, meta-model, concrete object syntax, tagging, rule-based, model-driven development, C++, feature-oriented programming, source-to-source}, researchr = {http://researchr.org/publication/KatsKV-SLE-2010}, cites = {0}, citedby = {0}, booktitle = {SLE}, } @inproceedings{OlmosV05, title = {Composing Source-to-Source Data-Flow Transformations with Rewriting Strategies and Dependent Dynamic Rewrite Rules}, author = {Karina Olmos and Eelco Visser}, year = {2005}, doi = {http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3443&spage=204}, tags = {program transformation, transformation language, variable binding, points-to analysis, dependent dynamic rewrite rules, systematic-approach, intermediate representation, analysis, data-flow analysis, composition, model-to-model transformation, transformation, rules, program optimization, Stratego/XT, data-flow, meta-model, rewriting, data-flow language, rewriting strategies, domain-specific language, graph-rewriting, meta programming, open-source, domain analysis, dynamic rewrite rules, compiler, model refactoring, programming languages, modeling, refactoring, Stratego, language modeling, rule-based refactoring, data-flow programming, programming, Meta-Environment, optimization, modeling language, graph transformation, rule-based, dynamic rules, model transformation, source-to-source, program analysis}, researchr = {http://researchr.org/publication/OlmosV05}, cites = {0}, citedby = {0}, pages = {204-220}, booktitle = {CC}, } @techreport{HemelVisser2011A, title = {{Programming the Mobile Web with Mobl}}, author = {Zef Hemel and Eelco Visser}, year = {2011}, month = {January}, doi = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2011-001.pdf}, tags = {code generation, design, program optimization, meta-model, interaction design, data-flow, mobile, data-flow language, web applications, domain-specific language, query language, language design, constraints, meta programming, web services, programming languages, mobile code, modeling, web service, language modeling, data-flow programming, programming, Meta-Environment, optimization, modeling language, rule-based, pattern language}, researchr = {http://researchr.org/publication/HemelVisser2011A}, cites = {0}, citedby = {0}, institution = {Delft University of Technology}, number = {TUD-SERG-2011-01}, } @techreport{HemelVisser2011-TUD-SERG-2011-024, title = {Declaratively Programming the Mobile Web with Mobl}, author = {Zef Hemel and Eelco Visser}, year = {2011}, month = {August}, tags = {code generation, design, program optimization, meta-model, interaction design, data-flow, mobile, logic, data-flow language, web applications, domain-specific language, query language, language design, constraints, meta programming, logic programming, programming languages, mobile code, modeling, language modeling, data-flow programming, programming, Meta-Environment, optimization, modeling language, rule-based, pattern language}, researchr = {http://researchr.org/publication/HemelVisser2011-TUD-SERG-2011-024}, cites = {0}, citedby = {0}, institution = {Delft University of Technology}, number = {TUD-SERG-2011-024}, address = {Delft, The Netherlands}, } @article{BrandV96, title = {Generation of Formatters for Context-Free Languages}, author = {Mark G. J. van den Brand and Eelco Visser}, year = {1996}, doi = {http://doi.acm.org/10.1145/226155.226156}, tags = {algebraic specification, software engineering, abstract syntax, code generation, systematic-approach, language engineering, SDF, rules, source code formatting, ASF+SDF, reuse, software language engineering, grammar, interpreter, meta programming, open-source, context-aware, pretty-printing, programming languages, algebra, programming, translation, Meta-Environment, rule-based, source-to-source}, researchr = {http://researchr.org/publication/BrandV96}, cites = {46}, citedby = {12}, journal = {TOSEM}, volume = {5}, number = {1}, pages = {1-41}, } @inproceedings{DeJongeVisserASE2012, title = {Automated Evaluation of Syntax Error Recovery}, author = {Maartje de Jonge and Eelco Visser}, year = {2012}, doi = {http://dx.doi.org/10.1145/2351676.2351736}, tags = {systematic-approach, open-source, parsing, rule-based, source-to-source}, researchr = {http://researchr.org/publication/DeJongeVisserASE2012}, cites = {0}, citedby = {0}, pages = {322-325}, booktitle = {27th IEEE/ACM International Conference on Automated Software Engineering (ASE 2012), September 3-7, Essen, Germany}, } @inproceedings{VollebregtKatsVisser2012, title = {Declarative Specification of Template-Based Textual Editors}, author = {Tobi Vollebregt and Lennart C. L. Kats and Eelco Visser}, year = {2012}, doi = {http://dx.doi.org/10.1145/2427048.2427056}, tags = {workbench, syntax definition, language design, parsing, code completion, context-aware, design, mobile code, consistency, language workbench, completeness, mobile, rule-based, C++, domain-specific language}, researchr = {http://researchr.org/publication/VollebregtKatsVisser2012}, cites = {0}, citedby = {0}, booktitle = {LDTA}, } @incollection{Vis96.mls, title = {Multi-Level Specifications}, author = {Eelco Visser}, year = {1996}, month = {September}, tags = {syntax definition, algebraic specification, language design, type checking, multi-level specification, design, type system, SDF, rules, algebra, abstraction, semantics, language prototyping, ASF+SDF, rule-based, C++}, researchr = {http://researchr.org/publication/Vis96.mls}, cites = {0}, citedby = {0}, booktitle = {Language Prototyping. An Algebraic Specification Approach}, editor = {Arie van Deursen and Jan Heering and Paul Klint}, volume = {5}, series = {AMAST Series in Computing}, address = {Singapore}, publisher = {World Scientific}, } @article{OlmosV02, title = {Strategies for Source-to-Source Constant Progagation}, author = {Karina Olmos and Eelco Visser}, year = {2002}, doi = {http://www.elsevier.com/gej-ng/31/29/23/125/47/show/Products/notes/index.htt#009}, tags = {program transformation, graph-rewriting, constant propagation, transformation system, abstract syntax, open-source, dynamic rewrite rules, control systems, model-to-model transformation, transformation, rules, Stratego, program optimization, Stratego/XT, data-flow programming, data-flow, rewriting, optimization, rule-based, graph transformation, model transformation, rewriting strategies, source-to-source}, researchr = {http://researchr.org/publication/OlmosV02}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {70}, number = {6}, } @inproceedings{Visser07, title = {{WebDSL}: {A} Case Study in Domain-Specific Language Engineering}, author = {Eelco Visser}, year = {2007}, doi = {http://dx.doi.org/10.1007/978-3-540-88643-3_7}, tags = {process modeling, software components, abstract syntax, software engineering, systematic-approach, language engineering, language, design, web engineering, SDF, Stratego/XT, case study, meta-model, data-flow, incremental, survey, ASF+SDF, data-flow language, web applications, domain-specific language, reuse, DSL engineering, software language engineering, language design, WebDSL, web application development, DSL, Stratego, reusable components, language modeling, software component, Meta-Environment, modeling language, pattern language, model-driven development, model-driven engineering}, researchr = {http://researchr.org/publication/Visser07}, cites = {0}, citedby = {8}, pages = {291-373}, booktitle = {GTTSE}, } @article{CabotV12, title = {ICMT 2011 Special Section}, author = {Jordi Cabot and Eelco Visser}, year = {2012}, researchr = {http://researchr.org/publication/CabotV12}, cites = {0}, citedby = {0}, journal = {jot}, volume = {11}, number = {2}, } @techreport{DeJongeVisser2012-TR, title = {Automated Evaluation of Syntax Error Recovery }, author = {Maartje de Jonge and Eelco Visser}, year = {2012}, doi = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2012-009.pdf}, tags = {systematic-approach, open-source, parsing, rule-based, source-to-source}, researchr = {http://researchr.org/publication/DeJongeVisser2012-TR}, cites = {0}, citedby = {0}, institution = {Delft University of Technology, Software Engineering Research Group}, number = {TUD-SERG-2012-035}, address = {Delft, The Netherlands}, } @inproceedings{Vis95.sdf, title = {A Family of Syntax Definition Formalisms}, author = {Eelco Visser}, year = {1995}, month = {May}, tags = {syntax definition, algebra, algebraic specification, SDF, abstract syntax, parsing, ASF+SDF, context-aware, design, syntax definition formalism, lexical syntax, disambiguation}, researchr = {http://researchr.org/publication/Vis95.sdf}, cites = {0}, citedby = {0}, booktitle = {ASF+SDF}, } @inproceedings{LammelVV03, title = {Strategic programming meets adaptive programming}, author = {Ralf Lämmel and Eelco Visser and Joost Visser}, year = {2003}, doi = {http://doi.acm.org/10.1145/643603.643621}, tags = {strategies, graph-rewriting, meta-objects, separation of concerns, object-oriented programming, systematic-approach, meta programming, generic programming, adaptive programming, subject-oriented programming, strategic programming, data-flow programming, programming, Meta-Environment, data-flow, traversal, rewriting, aspect oriented programming, feature-oriented programming, rewriting strategies}, researchr = {http://researchr.org/publication/LammelVV03}, cites = {0}, citedby = {1}, pages = {168-177}, booktitle = {AOSD}, } @inproceedings{Visser02, title = {Meta-programming with Concrete Object Syntax}, author = {Eelco Visser}, year = {2002}, doi = {http://link.springer.de/link/service/series/0558/bibs/2487/24870299.htm}, tags = {program transformation, transformation language, abstract syntax, systematic-approach, concrete syntax, model-to-model transformation, scannerless parsing, transformation, SDF, Stratego/XT, case study, meta-model, ASF+SDF, feature-oriented programming, meta-objects, syntax definition, object-oriented programming, meta programming, parsing, programming languages, subject-oriented programming, Stratego, programming, Meta-Environment, concrete object syntax, model transformation, source-to-source}, researchr = {http://researchr.org/publication/Visser02}, cites = {23}, citedby = {6}, pages = {299-315}, booktitle = {GPCE}, } @inproceedings{ErdwegKRKOV11, title = {Library-based model-driven software development with SugarJ}, author = {Sebastian Erdweg and Lennart C. L. Kats and Tillmann Rendel and Christian Kästner and Klaus Ostermann and Eelco Visser}, year = {2011}, doi = {http://doi.acm.org/10.1145/2048147.2048156}, tags = {Meta-Environment, meta-model, rule-based, model-driven development, C++}, researchr = {http://researchr.org/publication/ErdwegKRKOV11}, cites = {0}, citedby = {0}, pages = {17-18}, booktitle = {Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2011, part of SPLASH 2011, Portland, OR, USA, October 22 - 27, 2011}, } @techreport{preprint-Vis00, title = {Language Independent Traversals for Program Transformation}, author = {Eelco Visser}, year = {2000}, month = {July}, tags = {program transformation, transformation language, pattern matching, syntax definition, code generation, abstract syntax, systematic-approach, compiler, higher-order transformations, logic programming, generic programming, programming languages, transformation, rules, Stratego, data-flow programming, programming, data-flow, traversal, logic, rule-based, data-flow language, pattern language, C++, domain-specific language}, researchr = {http://researchr.org/publication/preprint-Vis00}, cites = {0}, citedby = {0}, type = {Preprint}, } @inproceedings{BDV09.cloud, title = {Software deployment in a dynamic cloud: From device to service orientation in a hospital environment}, author = {Sander van der Burg and Eelco Dolstra and Eelco Visser and Merijn de Jonge}, year = {2009}, month = {May}, doi = {http://dx.doi.org/10.1109/CLOUD.2009.5071534}, tags = {Nix, software components, software component, Meta-Environment, distributed deployment, deployment, meta-model, software deployment, architecture, software architecture}, researchr = {http://researchr.org/publication/BDV09.cloud}, cites = {0}, citedby = {0}, booktitle = {CLOUD}, } @inproceedings{DBLP:conf-oopsla-ErdwegKRKOV11a-0, title = {SugarJ: library-based language extensibility}, author = {Sebastian Erdweg and Lennart C. L. Kats and Tillmann Rendel and Christian Kästner and Klaus Ostermann and Eelco Visser}, year = {2011}, doi = {http://doi.acm.org/10.1145/2048147.2048199}, tags = {rule-based, C++, extensible language}, researchr = {http://researchr.org/publication/DBLP%3Aconf-oopsla-ErdwegKRKOV11a-0}, cites = {0}, citedby = {0}, pages = {187-188}, booktitle = {Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2011, part of SPLASH 2011, Portland, OR, USA, October 22 - 27, 2011}, } @inproceedings{Visser03, title = {Program Transformation with {Stratego/XT}: Rules, Strategies, Tools, and Systems in {Stratego/XT 0.9}}, author = {Eelco Visser}, year = {2003}, doi = {http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3016&spage=216}, tags = {program transformation, transformation language, graph-rewriting, programming paradigms, transformation system, parsing, composition, programming languages, control systems, transformation, rules, Stratego, abstraction, Stratego/XT, rewriting, rule-based, graph transformation, rewriting strategies}, researchr = {http://researchr.org/publication/Visser03}, cites = {0}, citedby = {4}, pages = {216-238}, booktitle = {dagstuhl}, } @inproceedings{VermolenV08, title = {Heterogeneous Coupled Evolution of Software Languages}, author = {Sander Vermolen and Eelco Visser}, year = {2008}, doi = {http://dx.doi.org/10.1007/978-3-540-87875-9_44}, tags = {transformation language, XML, systematic-approach, software languages, coupled, format evolution, coupled evolution, model-to-model transformation, transformation, abstraction, meta-model, data-flow, database, data-flow language, software architecture, domain-specific language, heterogeneous, meta-objects, software evolution, model, grammar, architecture, evolution, modeling, languages, language modeling, XML Schema, Meta-Environment, modeling language, model transformation, source-to-source}, researchr = {http://researchr.org/publication/VermolenV08}, cites = {0}, citedby = {3}, pages = {630-644}, booktitle = {MoDELS}, } @inproceedings{Erdweg-GPCE-2011, title = {Growing a Language Environment with Editor Libraries}, author = {Sebastian Erdweg and Lennart C. L. Kats and Tillmann Rendel and Christian Kästner and Klaus Ostermann and Eelco Visser}, year = {2011}, doi = {http://dx.doi.org/10.1145/2047862.2047891}, tags = {Spoofax, workbench, meta-objects, XML, open-source, Java, composition, context-aware, Eclipse, writing, language workbench, XML Schema, Meta-Environment, rule-based, C++, source-to-source, domain-specific language, extensible language}, researchr = {http://researchr.org/publication/Erdweg-GPCE-2011}, cites = {0}, citedby = {0}, pages = {167-176}, booktitle = {GPCE}, } @article{HemelKGV-2010, title = {Code generation by model transformation: a case study in transformation modularity}, author = {Zef Hemel and Lennart C. L. Kats and Danny M. Groenewegen and Eelco Visser}, year = {2010}, month = {June}, doi = {http://dx.doi.org/10.1007/s10270-009-0136-1}, tags = {program transformation, transformation language, separation of concerns, points-to analysis, code generation, software engineering, systematic-approach, language engineering, analysis, composition, model-to-model transformation, transformation, rules, Stratego/XT, case study, meta-model, software architecture, domain-specific language, software language engineering, WebDSL, meta programming, open-source, domain analysis, transformation engineering, architecture, context-aware, programming languages, DSL, Stratego, language modeling, Meta-Environment, translation, modeling language, rule-based, model transformation, model-driven development, C++, source-to-source, program analysis, model-driven engineering}, researchr = {http://researchr.org/publication/HemelKGV-2010}, cites = {68}, citedby = {2}, journal = {SoSyM}, volume = {9}, number = {3}, pages = {375-402}, } @techreport{KlintV94-P9426, title = {Using Filters for the Disambiguation of Context-free Grammars}, author = {Paul Klint and Eelco Visser}, year = {1994}, month = {October}, tags = {case study, grammar, parsing, context-aware, domain-specific language, disambiguation}, researchr = {http://researchr.org/publication/KlintV94-P9426}, cites = {0}, citedby = {0}, institution = {Programming Research Group, University of Amsterdam}, type = {Technical Report}, number = {P9426}, } @incollection{Visser1997-1, title = {Domain-specific language engineering}, author = {Eelco Visser}, year = {2007}, tags = {language engineering, domain-specific language}, researchr = {http://researchr.org/publication/Visser1997-1}, cites = {0}, citedby = {2}, booktitle = {Pre-Proceedings of the International Summer School on Generative and Transformational Techniques in Software Engineering (GTTSE 2007)}, address = {Braga, Portugal}, organization = {Universidade do Minho}, } @inproceedings{KonatKWV13, title = {Declarative Name Binding and Scope Rules}, author = {Gabriël D. P. Konat and Lennart C. L. Kats and Guido Wachsmuth and Eelco Visser}, year = {2013}, doi = {http://dx.doi.org/10.1007/978-3-642-36089-3_18}, tags = {Spoofax, workbench, programming languages, language workbench, variable binding, rules, constraints, compiler, rule-based, pattern language, C++}, researchr = {http://researchr.org/publication/KonatKWV13}, cites = {0}, citedby = {0}, pages = {311-331}, booktitle = {SLE}, } @inproceedings{KlintV94, title = {Using Filters for the Disambiguation of Context-free Grammars}, author = {Paul Klint and Eelco Visser}, year = {1994}, month = {October}, tags = {case study, grammar, parsing, context-aware, domain-specific language, disambiguation}, researchr = {http://researchr.org/publication/KlintV94}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the ASMICS Workshop on Parsing Theory}, } @phdthesis{Vis97.thesis, title = {Syntax Definition for Language Prototyping}, author = {Eelco Visser}, year = {1997}, month = {September}, tags = {graph-rewriting, syntax definition, algebraic specification, language design, parsing, context-aware, design, SGLR, disambiguation, scannerless parsing, testing, SDF, algebra, rewriting, ASF+SDF, syntax definition formalism}, researchr = {http://researchr.org/publication/Vis97.thesis}, cites = {0}, citedby = {6}, school = {University of Amsterdam}, advisor = {Paul Klint}, } @inproceedings{KatsV10-0, title = {Encapsulating Software Platform Logic by Aspect-Oriented Programming: A Case Study in Using Aspects for Language Portability}, author = {Lennart C. L. Kats and Eelco Visser}, year = {2010}, doi = {http://dx.doi.org/10.1109/SCAM.2010.11}, tags = {programming languages, subject-oriented programming, object-oriented programming, programming, case study, logic, aspect oriented programming, C++, feature-oriented programming, logic programming}, researchr = {http://researchr.org/publication/KatsV10-0}, cites = {0}, citedby = {0}, pages = {147-156}, booktitle = {SCAM}, } @inproceedings{KatsJNV09, title = {Providing rapid feedback in generated modular language environments: adding error recovery to scannerless {generalized-LR} parsing}, author = {Lennart C. L. Kats and Maartje de Jonge and Emma Nilsson-Nyman and Eelco Visser}, year = {2009}, doi = {http://doi.acm.org/10.1145/1640089.1640122}, tags = {principles, code generation, systematic-approach, grammar, parsing, analysis, Java, composition, context-aware, island grammars, scannerless parsing, SDF, Stratego, semantics, Meta-Environment, ASF+SDF, rule-based, C++, parsing algorithm}, researchr = {http://researchr.org/publication/KatsJNV09}, cites = {0}, citedby = {1}, pages = {445-464}, booktitle = {OOPSLA}, } @inproceedings{BravenboerV08, title = {Parse Table Composition}, author = {Martin Bravenboer and Eelco Visser}, year = {2009}, doi = {http://dx.doi.org/10.1007/978-3-642-00434-6_6}, tags = {language composition, syntax definition, grammar, deployment, open-source, parsing, compiler, composition, parse table composition, programming languages, SDF, programming, ASF+SDF, parsing algorithm, source-to-source, domain-specific language, extensible language}, researchr = {http://researchr.org/publication/BravenboerV08}, cites = {0}, citedby = {0}, pages = {74-94}, booktitle = {SLE}, } @article{JohannV01, title = {Fusing Logic and Control with Local Transformations: An Example Optimization}, author = {Patricia Johann and Eelco Visser}, year = {2001}, doi = {http://www.elsevier.nl/locate/entcs/volume57.html}, tags = {program transformation, transformation language, separation of concerns, generic programming, rules, transformation, Stratego/XT, program optimization, term rewriting, logic, rewriting, rewriting strategies, reuse, graph-rewriting, innermost rewriting, rewriting logic, context-aware, logic programming, programming languages, reusable components, Stratego, programming, optimization, graph transformation, rule-based}, researchr = {http://researchr.org/publication/JohannV01}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {57}, } @inproceedings{KatsVV11a, title = {Testing domain-specific languages}, author = {Lennart C. L. Kats and Rob Vermaas and Eelco Visser}, year = {2011}, doi = {http://doi.acm.org/10.1145/2048147.2048160}, tags = {testing, C++, domain-specific language}, researchr = {http://researchr.org/publication/KatsVV11a}, cites = {0}, citedby = {0}, pages = {25-26}, booktitle = {Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2011, part of SPLASH 2011, Portland, OR, USA, October 22 - 27, 2011}, } @inproceedings{KatsBV08, title = {Mixing source and bytecode: a case for compilation by normalization}, author = {Lennart C. L. Kats and Martin Bravenboer and Eelco Visser}, year = {2008}, doi = {http://doi.acm.org/10.1145/1449764.1449772}, tags = {synchronization, systematic-approach, constraints, open-source, security, JavaFront, compiler, compilation by normalization, Java, composition, Stratego, language modeling, Stratego/XT, Meta-Environment, translation, meta-model, Dryad, rule-based, modeling language, C++, source-to-source, domain-specific language, extensible language}, researchr = {http://researchr.org/publication/KatsBV08}, cites = {44}, citedby = {3}, pages = {91-108}, booktitle = {OOPSLA}, } @article{GluckV11, title = {Special Issue on Generative Programming and Component Engineering (Selected Papers from GPCE 2004/2005)}, author = {Robert Glück and Eelco Visser}, year = {2011}, month = {May}, doi = {http://dx.doi.org/10.1016/j.scico.2011.02.001}, tags = {programming, generative programming}, researchr = {http://researchr.org/publication/GluckV11}, cites = {0}, citedby = {0}, journal = {SCP}, volume = {76}, number = {5}, pages = {347-348}, } @techreport{VermolenWachsmuthVisser-TUD-SERG-2011-026, title = {Reconstructing Complex Metamodel Evolution}, author = {Sander Vermolen and Guido Wachsmuth and Eelco Visser}, year = {2011}, month = {August}, tags = {systematic-approach, Meta-Environment, meta-model, migration}, researchr = {http://researchr.org/publication/VermolenWachsmuthVisser-TUD-SERG-2011-026}, cites = {0}, citedby = {0}, institution = {Delft University of Technology}, number = {TUD-SERG-2011-026}, address = {Delft, The Netherlands}, } @inproceedings{VermolenWachsmuthVisser2011, title = {Reconstructing Complex Metamodel Evolution}, author = {Sander Vermolen and Guido Wachsmuth and Eelco Visser}, year = {2012}, doi = {http://dx.doi.org/10.1007/978-3-642-28830-2_11}, tags = {transformation language, software components, software engineering, systematic-approach, detection, coupled evolution, reconstruction, language engineering, modelware, model-to-model transformation, transformation, meta-model, software language engineering, software evolution, language evolution, transformation engineering, coupled transformation, migration, model refactoring, evolution, refactoring, complex, language modeling, software component, Meta-Environment, modeling language, model transformation, source-to-source, model-driven engineering}, researchr = {http://researchr.org/publication/VermolenWachsmuthVisser2011}, cites = {29}, citedby = {0}, pages = {201-221}, booktitle = {SLE}, } @inproceedings{DuranRBBBCEEJK10, title = {The Third Rewrite Engines Competition}, author = {Francisco Durán and Manuel Roldán and Jean-Christophe Bach and Emilie Balland and Mark G. J. van den Brand and James R. Cordy and Steven Eker and Luc Engelen and Maartje de Jonge and Karl Trygve Kalleberg and Lennart C. L. Kats and Pierre-Etienne Moreau and Eelco Visser}, year = {2010}, doi = {http://dx.doi.org/10.1007/978-3-642-16310-4_16}, tags = {graph-rewriting, rewriting, C++}, researchr = {http://researchr.org/publication/DuranRBBBCEEJK10}, cites = {0}, citedby = {0}, pages = {243-261}, booktitle = {wrla}, } @inproceedings{GroenewegenV-SLE-2009, title = {Integration of Data Validation and User Interface Concerns in a {DSL} for Web Applications}, author = {Danny M. Groenewegen and Eelco Visser}, year = {2010}, doi = {http://dx.doi.org/10.1007/978-3-642-12107-4}, tags = {code generation, action semantics, systematic-approach, constraints, WebDSL, language engineering, model checking, web engineering, DSL, modeling, rules, semantics, language modeling, data validation, Meta-Environment, data-flow, meta-model, rule-based, data-flow language, modeling language, web applications, domain-specific language, model-driven engineering}, researchr = {http://researchr.org/publication/GroenewegenV-SLE-2009}, cites = {0}, citedby = {2}, booktitle = {SLE}, } @article{GroenewegenVisser2013, title = {Integration of Data Validation and User Interface Concerns in a DSL for Web Applications}, author = {Danny M. Groenewegen and Eelco Visser}, year = {2013}, month = {February}, doi = {http://dx.doi.org/10.1007/s10270-010-0173-9}, tags = {process modeling, syntax definition, code generation, action semantics, systematic-approach, constraints, application framework, WebDSL, type checking, model checking, DSL, modeling, rules, semantics, language modeling, data validation, Meta-Environment, data-flow, meta-model, rule-based, data-flow language, modeling language, web applications, domain-specific language}, researchr = {http://researchr.org/publication/GroenewegenVisser2013}, cites = {32}, citedby = {0}, journal = {SoSyM}, volume = {12}, number = {1}, pages = {35-52}, } @article{DolstraFlorijnde-JongeVisser2004, title = {Transparantie in variabiliteit: Heldere keuzes in een eenduidige configuratieomgeving}, author = {Eelco Dolstra and Gert Florijn and Merijn de Jonge and Eelco Visser}, year = {2004}, month = {February}, researchr = {http://researchr.org/publication/DolstraFlorijnde-JongeVisser2004}, cites = {0}, citedby = {0}, journal = {Informatie}, volume = {46}, number = {1}, pages = {18-21}, } @article{VisserB98, title = {A core language for rewriting}, author = {Eelco Visser and Zine-El-Abidine Benaissa}, year = {1998}, doi = {http://dx.doi.org/10.1016/S1571-0661(05)80027-1}, tags = {transformation language, graph-rewriting, transformation system, transformation, SDF, rules, abstraction, traversal, term rewriting, rewriting, ASF+SDF, rule-based, graph transformation, rewriting strategies}, researchr = {http://researchr.org/publication/VisserB98}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {15}, } @inproceedings{HemelVV08, title = {{WebWorkFlow}: An Object-Oriented Workflow Modeling Language for Web Applications}, author = {Zef Hemel and Ruben Verhaaf and Eelco Visser}, year = {2008}, doi = {http://dx.doi.org/10.1007/978-3-540-87875-9_8}, tags = {transformation language, process modeling, WebWorkFlow, language engineering, web engineering, model-to-model transformation, transformation, abstraction, meta-model, interaction design, web applications, domain-specific language, meta-objects, language design, WebDSL, transformation engineering, workflow, modeling, DSL, language modeling, Meta-Environment, object-role modeling, completeness, modeling language, pattern language, model-driven development, model transformation, workflow patterns, source-to-source, model-driven engineering}, researchr = {http://researchr.org/publication/HemelVV08}, cites = {0}, citedby = {6}, pages = {113-127}, booktitle = {MoDELS}, } @article{KallebergV08, title = {Fusing a Transformation Language with an Open Compiler}, author = {Karl Trygve Kalleberg and Eelco Visser}, year = {2008}, doi = {http://dx.doi.org/10.1016/j.entcs.2008.03.042}, tags = {program transformation, Spoofax, transformation language, points-to analysis, abstract syntax, analysis, data-flow analysis, Java, Eclipse, model-to-model transformation, transformation, Stratego/XT, data-flow, rewriting, logic, term rewriting, data-flow language, feature-oriented programming, domain-specific language, reuse, graph-rewriting, transformation system, object-oriented programming, rewriting logic, interpreter, open-source, domain analysis, parsing, compiler, context-aware, logic programming, programming languages, type system, subject-oriented programming, Stratego, functional programming, Eclipse Java Compiler, data-flow programming, open compiler, completeness, graph transformation, rule-based, model transformation, source-to-source, program analysis}, researchr = {http://researchr.org/publication/KallebergV08}, cites = {0}, citedby = {1}, journal = {ENTCS}, volume = {203}, number = {2}, pages = {21-36}, } @inproceedings{VoelterVisser2011, title = {Product Line Engineering using Domain-Specific Languages}, author = {Markus Völter and Eelco Visser}, year = {2011}, doi = {http://dx.doi.org/10.1109/SPLC.2011.25}, tags = {object-oriented programming, application framework, grammar, meta programming, language engineering, context-aware, programming languages, product line, DSL, modeling, language modeling, programming, case study, Meta-Environment, meta-model, object-role modeling, modeling language, feature-oriented programming, domain-specific language, model-driven engineering}, researchr = {http://researchr.org/publication/VoelterVisser2011}, cites = {0}, citedby = {0}, pages = {70-79}, booktitle = {SPLC}, } @inproceedings{Visser01, title = {Stratego: A Language for Program Transformation Based on Rewriting Strategies}, author = {Eelco Visser}, year = {2001}, doi = {http://link.springer.de/link/service/series/0558/bibs/2051/20510357.htm}, tags = {program transformation, transformation language, software engineering, language engineering, generic programming, transformation, rules, program optimization, Stratego/XT, rewriting, term rewriting, feature-oriented programming, rewriting strategies, domain-specific language, reuse, graph-rewriting, software language engineering, termination, programming paradigms, object-oriented programming, transformation system, transformation engineering, compiler, migration, higher-order transformations, programming languages, control systems, subject-oriented programming, refactoring, Stratego, rule-based refactoring, traversal, optimization, graph transformation, rule-based, pattern language}, researchr = {http://researchr.org/publication/Visser01}, cites = {0}, citedby = {1}, pages = {357-362}, booktitle = {RTA}, } @inproceedings{Vermolen-GPCE-2011, title = {Generating Database Migration for Evolving Web Applications}, author = {Sander Vermolen and Guido Wachsmuth and Eelco Visser}, year = {2011}, doi = {http://dx.doi.org/10.1145/2047862.2047876}, tags = {transformation language, code generation, coupled evolution, model-to-model transformation, transformation, abstraction, relational database, meta-model, data-flow, database, data-flow language, web applications, domain-specific language, meta-objects, software evolution, WebDSL, model checking, coupled transformation, compiler, migration, modeling, language modeling, Meta-Environment, object-role modeling, modeling language, model transformation, source-to-source}, researchr = {http://researchr.org/publication/Vermolen-GPCE-2011}, cites = {0}, citedby = {0}, pages = {83-92}, booktitle = {GPCE}, } @article{Visser01a, title = {Scoped Dynamic Rewrite Rules}, author = {Eelco Visser}, year = {2001}, doi = {http://www.elsevier.nl/locate/entcs/volume59.html}, tags = {program transformation, transformation language, graph-rewriting, role-based access control, dynamic rewrite rules, context-aware, access control, programming languages, transformation, rules, Stratego, Stratego/XT, term rewriting, rewriting, rule-based, graph transformation, rewriting strategies}, researchr = {http://researchr.org/publication/Visser01a}, cites = {0}, citedby = {0}, journal = {ENTCS}, volume = {59}, number = {4}, } @techreport{Vis97.cc, title = {Character Classes}, author = {Eelco Visser}, year = {1997}, month = {August}, tags = {graph-rewriting, syntax definition, algebra, algebraic specification, SDF, rewriting, character class, term rewriting, ASF+SDF}, researchr = {http://researchr.org/publication/Vis97.cc}, cites = {0}, citedby = {0}, institution = {Programming Research Group, University of Amsterdam}, number = {P9708}, } @techreport{Visser2010, title = {Performing Systematic Literature Reviews with Researchr: Tool Demonstration}, author = {Eelco Visser}, year = {2010}, month = {May}, doi = {http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2010-10.pdf}, tags = {reviewing, systematic-approach, digital libraries, Meta-Environment, systematic review, digital library, workflow, literature review}, researchr = {http://researchr.org/publication/Visser2010}, cites = {11}, citedby = {0}, institution = {Software Engineering Research Group, Delft University of Technology}, number = {TUD-SERG-2010-010}, address = {Delft, The Netherlands}, } @inproceedings{KonatVKWV2012, title = {The {Spoofax} Name Binding Language}, author = {Gabriël D. P. Konat and Vlad A. Vergu and Lennart C. L. Kats and Guido Wachsmuth and Eelco Visser}, year = {2012}, tags = {Spoofax, C++}, researchr = {http://researchr.org/publication/KonatVKWV2012}, cites = {0}, citedby = {0}, booktitle = {Companion to the 27th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2011, part of SPLASH 2012, Tucson, AR, USA, October 19 - 26, 2012}, } @article{Visser98, title = {Polymorphic Syntax Definition}, author = {Eelco Visser}, year = {1998}, doi = {http://dx.doi.org/10.1016/S0304-3975(97)00268-5}, tags = {syntax definition, algebra, algebraic specification, abstract syntax, signature, grammar, data-flow, parsing, context-aware, parsing algorithm}, researchr = {http://researchr.org/publication/Visser98}, cites = {0}, citedby = {0}, journal = {TCS}, volume = {199}, number = {1-2}, pages = {57-86}, } @article{Visser05, title = {A survey of strategies in rule-based program transformation systems}, author = {Eelco Visser}, year = {2005}, doi = {http://dx.doi.org/10.1016/j.jsc.2004.12.011}, tags = {program transformation, transformation language, program representation, systematic-approach, program transformation system, strategy annotations, congruence operators, generic programming, strategy combinators, transformation, rule-based program transformation, rules, tree pattern matching, transformation strategy, data-flow, rewriting, transformation strategies, term rewriting, survey, data-flow language, rewriting strategies, tree traversal, domain-specific language, context-sensitive transformation, graph-rewriting, pattern matching, transformation system, parsing, context-aware, tree parsing, higher-order transformations, programming languages, generic traversal strategies, attribute grammars, data-flow programming, programming, traversal, graph transformation, rule-based, pattern language}, researchr = {http://researchr.org/publication/Visser05}, cites = {1}, citedby = {1}, journal = {JSC}, volume = {40}, number = {1}, pages = {831-873}, } @inproceedings{BrandDHJJKKMOSVVV01, title = {The {ASF+SDF} Meta-environment: A Component-Based Language Development Environment}, author = {Mark G. J. van den Brand and Arie van Deursen and Jan Heering and H. A. de Jong and Merijn de Jonge and Tobias Kuipers and Paul Klint and Leon Moonen and Pieter A. Olivier and Jeroen Scheerder and Jurgen J. Vinju and Eelco Visser and Joost Visser}, year = {2001}, doi = {http://link.springer.de/link/service/series/0558/bibs/2027/20270365.htm}, tags = {meta-objects, Cobol, meta programming, open-source, metaprogramming, architecture, programming languages, DSL, SDF, Meta-Environment, meta-model, ASF+SDF, rule-based, model-driven development, source-to-source}, researchr = {http://researchr.org/publication/BrandDHJJKKMOSVVV01}, cites = {0}, citedby = {3}, pages = {365-370}, booktitle = {CC}, } @article{JohannV00, title = {Warm fusion in {Stratego}: A case study in generation of program transformation systems}, author = {Patricia Johann and Eelco Visser}, year = {2000}, doi = {http://dx.doi.org/10.1023/A:1018956702672}, tags = {program transformation, transformation language, deforestation, code generation, Haskell, design, generic programming, transformation, rules, program optimization, Stratego/XT, case study, data-flow, rewriting, data-flow language, rewriting strategies, domain-specific language, graph-rewriting, programming paradigms, language design, transformation system, higher-order transformations, programming languages, Stratego, functional programming, data-flow programming, programming, traversal, optimization, graph transformation, rule-based, little language, warm fusion, extensible language}, researchr = {http://researchr.org/publication/JohannV00}, cites = {1}, citedby = {0}, journal = {AMAI}, volume = {29}, number = {1-4}, pages = {1-34}, } @inproceedings{BravenboerVVV05, title = {Generalized Type-Based Disambiguation of Meta Programs with Concrete Object Syntax}, author = {Martin Bravenboer and Rob Vermaas and Jurgen J. Vinju and Eelco Visser}, year = {2005}, doi = {http://dx.doi.org/10.1007/11561347_12}, tags = {meta-objects, AspectJ, syntax definition, object-oriented programming, systematic-approach, concrete syntax, meta programming, parsing, Java, disambiguation, programming languages, type system, scannerless parsing, subject-oriented programming, SDF, programming, Meta-Environment, meta-model, concrete object syntax, ASF+SDF, rule-based, feature-oriented programming, domain-specific language, reuse}, researchr = {http://researchr.org/publication/BravenboerVVV05}, cites = {0}, citedby = {2}, pages = {157-172}, booktitle = {GPCE}, } @misc{Visser:2009, title = {researchr.org}, author = {Eelco Visser}, year = {2009}, doi = {http://researchr.org}, note = {Researchr is a web service for indexing, managing, and sharing bibliographic information of scientific publications for researchers by researchers.}, tags = {researchr, web service, bibliography, digital library, web services, software}, researchr = {http://researchr.org/publication/Visser%3A2009}, cites = {0}, citedby = {0}, howpublished = {http://researchr.org}, } @inproceedings{HemelKV08, title = {Code Generation by Model Transformation}, author = {Zef Hemel and Lennart C. L. Kats and Eelco Visser}, year = {2008}, doi = {http://dx.doi.org/10.1007/978-3-540-69927-9_13}, tags = {program transformation, transformation language, code generation, software engineering, concrete syntax, language engineering, web engineering, model-to-model transformation, transformation, rules, case study, meta-model, data-flow, rewriting, data-flow language, aspect oriented programming, web applications, feature-oriented programming, rewriting strategies, domain-specific language, graph-rewriting, meta-objects, programming paradigms, software language engineering, syntax definition, object-oriented programming, WebDSL, meta programming, open-source, transformation engineering, programming languages, DSL, modeling, subject-oriented programming, Stratego, language modeling, data-flow programming, Meta-Environment, object-role modeling, concrete object syntax, rule-based, graph transformation, modeling language, model transformation, pattern language, model-driven development, C++, source-to-source, model-driven engineering}, researchr = {http://researchr.org/publication/HemelKV08}, cites = {0}, citedby = {3}, pages = {183-198}, booktitle = {ICMT}, } @inproceedings{BravenboerGV06, title = {{MetaBorg} in Action: Examples of Domain-Specific Language Embedding and Assimilation Using {Stratego/XT}}, author = {Martin Bravenboer and René de Groot and Eelco Visser}, year = {2006}, doi = {http://dx.doi.org/10.1007/11877028_10}, tags = {program transformation, transformation language, generative programming, language embedding, language engineering, Java, composition, generic programming, transformation, abstraction, Stratego/XT, MetaBorg, rewriting, domain-specific language, graph-rewriting, language composition, language design, transformation system, transformation engineering, assimilation, programming languages, DSL, Stratego, programming, graph transformation, rule-based, domain-specific language embedding}, researchr = {http://researchr.org/publication/BravenboerGV06}, cites = {0}, citedby = {3}, pages = {297-311}, booktitle = {GTTSE}, } @article{BravenboerDOV06, title = {Program Transformation with Scoped Dynamic Rewrite Rules}, author = {Martin Bravenboer and Arthur van Dam and Karina Olmos and Eelco Visser}, year = {2006}, doi = {http://iospress.metapress.com/openurl.asp?genre=article&issn=0169-2968&volume=69&issue=1&spage=123}, tags = {program transformation, transformation language, graph-rewriting, role-based access control, language design, dynamic rewrite rules, context-aware, design, access control, programming languages, formal semantics, transformation, rules, Stratego, semantics, Stratego/XT, rewriting, operational semantics, term rewriting, rule-based, graph transformation, rewriting strategies}, researchr = {http://researchr.org/publication/BravenboerDOV06}, cites = {0}, citedby = {4}, journal = {FUIN}, volume = {69}, number = {1-2}, pages = {123-178}, } @article{SloaneKV2012, title = {A pure embedding of attribute grammars}, author = {Anthony M. Sloane and Lennart C. L. Kats and Eelco Visser}, year = {2012}, doi = {http://dx.doi.org/10.1016/j.scico.2011.11.005}, tags = {meta-objects, programming paradigms, pattern matching, object-oriented programming, systematic-approach, grammar, meta programming, domain analysis, analysis, Scala, composition, caching, programming languages, subject-oriented programming, functional programming, attribute grammars, programming, Meta-Environment, attribute grammar, pattern language, C++, feature-oriented programming, program analysis, domain-specific language}, researchr = {http://researchr.org/publication/SloaneKV2012}, cites = {0}, citedby = {0}, journal = {SCP}, } @article{HemelGKV11, title = {Static consistency checking of web applications with {WebDSL}}, author = {Zef Hemel and Danny M. Groenewegen and Lennart C. L. Kats and Eelco Visser}, year = {2011}, doi = {http://dx.doi.org/10.1016/j.jsc.2010.08.006}, tags = {Ruby, transformation language, points-to analysis, XML, application framework, systematic-approach, analysis, design, model-to-model transformation, transformation, rules, abstraction, web applications, domain-specific language, Ruby on Rails, query language, language design, WebDSL, open-source, domain analysis, model checking, compiler, consistency, Stratego, XML Schema, static analysis, rule-based, model-driven development, model transformation, C++, source-to-source}, researchr = {http://researchr.org/publication/HemelGKV11}, cites = {0}, citedby = {0}, journal = {JSC}, volume = {46}, number = {2}, pages = {150-182}, } @techreport{BV94, title = {From Box to {\TeX}: An algebraic approach to the generation of documentation tools}, author = {Eelco Visser and Mark G. J. van den Brand}, year = {1994}, month = {July}, tags = {program transformation, transformation language, meta-objects, algebraic specification, code generation, systematic-approach, meta programming, process algebra, programming languages, model-to-model transformation, transformation, algebra, SDF, semantics, programming, case study, Meta-Environment, translation, meta-model, ASF+SDF, model transformation}, researchr = {http://researchr.org/publication/BV94}, cites = {0}, citedby = {0}, institution = {Programming Research Group, University of Amsterdam}, number = {P9420}, } @inproceedings{VolterV10, title = {Language extension and composition with language workbenches}, author = {Markus Völter and Eelco Visser}, year = {2010}, doi = {http://doi.acm.org/10.1145/1869542.1869623}, tags = {workbench, language workbench, composition}, researchr = {http://researchr.org/publication/VolterV10}, cites = {0}, citedby = {0}, pages = {301-304}, booktitle = {OOPSLA}, } @inproceedings{BravenboerV04, title = {Concrete syntax for objects: domain-specific language embedding and assimilation without restrictions}, author = {Martin Bravenboer and Eelco Visser}, year = {2004}, doi = {http://doi.acm.org/10.1145/1028976.1029007}, tags = {program transformation, transformation language, XML, code generation, concrete syntax, composition, transformation, SDF, abstraction, Stratego/XT, MetaBorg, ASF+SDF, feature-oriented programming, domain-specific language, reuse, meta-objects, syntax definition, object-oriented programming, language design, meta programming, assimilation, programming languages, subject-oriented programming, Stratego, XML Schema, Meta-Environment, concrete object syntax, extensible language}, researchr = {http://researchr.org/publication/BravenboerV04}, cites = {51}, citedby = {8}, pages = {365-383}, booktitle = {OOPSLA}, } @proceedings{onward-2011, title = {{Proceedings of the 10th SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software (Onward 2011)}}, year = {2011}, tags = {reflection, programming paradigms, writing, software engineering, application framework, programming, Spiral}, researchr = {http://researchr.org/publication/onward-2011}, cites = {0}, citedby = {0}, booktitle = {{Proceedings of the 10th SIGPLAN symposium on New ideas, new paradigms, and reflections on programming and software (Onward 2011)}}, conference = {Onward!}, editor = {Eelco Visser and Robert Hirschfeld}, publisher = {ACM Press}, } @proceedings{gpce-2010-2, title = {Proceedings of the ninth international conference on Generative programming and component engineering (GPCE 2010)}, year = {2010}, month = {October}, tags = {programming languages, reviewing, software language engineering, software components, software engineering, software component, programming, generative programming, language engineering, software product quality}, researchr = {http://researchr.org/publication/gpce-2010-2}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the ninth international conference on Generative programming and component engineering (GPCE 2010)}, conference = {GPCE}, editor = {Eelco Visser and Jaakko Järvi}, publisher = {ACM}, } @proceedings{smp-2010, title = {Proceedings of the Seminar on Meta-Programming (SMP 2010)}, year = {2010}, tags = {meta-objects, programming, Meta-Environment, meta programming, meta-model}, researchr = {http://researchr.org/publication/smp-2010}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the Seminar on Meta-Programming (SMP 2010)}, conference = {SMP}, editor = {Eelco Visser}, } @proceedings{wir-2011, title = {Proceedings of the Workshop on Intermediate Representations}, year = {2011}, tags = {program transformation, transformation language, programming languages, transformation, language design, programming, intermediate representation, Meta-Environment, meta programming, design, domain-specific language}, researchr = {http://researchr.org/publication/wir-2011}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the Workshop on Intermediate Representations}, conference = {WIR}, editor = {Florent Bouchez and Sebastian Hack and Eelco Visser}, } @proceedings{icmt-2011-0, title = {Theory and Practice of Model Transformations - 4th International Conference, ICMT 2011, Zurich, Switzerland, June 27-28, 2011. Proceedings}, year = {2011}, doi = {http://dx.doi.org/10.1007/978-3-642-21732-6}, tags = {model-to-model transformation, transformation, Meta-Environment, meta-model, peer-to-peer, model transformation, source-to-source}, researchr = {http://researchr.org/publication/icmt-2011-0}, cites = {0}, citedby = {0}, booktitle = {Theory and Practice of Model Transformations - 4th International Conference, ICMT 2011, Zurich, Switzerland, June 27-28, 2011. Proceedings}, conference = {ICMT}, editor = {Jordi Cabot and Eelco Visser}, volume = {6707}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-21731-9}, } @proceedings{pepm:2007, title = {Proceedings of the 2007 ACM SIGPLAN Workshop on Partial Evaluation and Semantics-based Program Manipulation, 2007, Nice, France, January 15-16, 2007}, year = {2007}, tags = {semantics, partial evaluation}, researchr = {http://researchr.org/publication/pepm%3A2007}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the 2007 ACM SIGPLAN Workshop on Partial Evaluation and Semantics-based Program Manipulation, 2007, Nice, France, January 15-16, 2007}, conference = {PEPM}, editor = {Ganesan Ramalingam and Eelco Visser}, publisher = {ACM}, isbn = {978-1-59593-620-2}, } @proceedings{gpce-2010, title = {Generative Programming And Component Engineering, Proceedings of the Ninth International Conference on Generative Programming and Component Engineering, GPCE 2010, Eindhoven, The Netherlands, October 10-13, 2010}, year = {2010}, tags = {programming, generative programming}, researchr = {http://researchr.org/publication/gpce-2010}, cites = {0}, citedby = {0}, booktitle = {Generative Programming And Component Engineering, Proceedings of the Ninth International Conference on Generative Programming and Component Engineering, GPCE 2010, Eindhoven, The Netherlands, October 10-13, 2010}, conference = {GPCE}, editor = {Eelco Visser and Jaakko Järvi}, publisher = {ACM}, isbn = {978-1-4503-0154-1}, } @proceedings{gpce:2004, title = {Generative Programming and Component Engineering: Third International Conference, GPCE 2004, Vancouver, Canada, October 24-28, 2004. Proceedings}, year = {2004}, tags = {programming, generative programming}, researchr = {http://researchr.org/publication/gpce%3A2004}, cites = {0}, citedby = {0}, booktitle = {Generative Programming and Component Engineering: Third International Conference, GPCE 2004, Vancouver, Canada, October 24-28, 2004. Proceedings}, conference = {GPCE}, editor = {Gabor Karsai and Eelco Visser}, volume = {3286}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-23580-9}, } @proceedings{icmt-2011, title = {Theory and Practice of Model Transformations, Fourth International Conference, ICMT 2011, Zurich, Switzerland, June 27-28, 2011. Proceedings}, year = {2011}, month = {June}, doi = {http://dx.doi.org/10.1007/978-3-642-21732-6}, tags = {model-to-model transformation, transformation, Meta-Environment, meta-model, model transformation, source-to-source}, researchr = {http://researchr.org/publication/icmt-2011}, cites = {0}, citedby = {0}, booktitle = {Theory and Practice of Model Transformations, Fourth International Conference, ICMT 2011, Zurich, Switzerland, June 27-28, 2011. Proceedings}, conference = {ICMT}, editor = {Jordi Cabot and Eelco Visser}, volume = {6707}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, } @proceedings{rule:2002, title = {Proceedings of the 2002 ACM SIGPLAN Workshop on Rule-Based Programming, Pittsburgh, Pennsylvania, USA, 2002}, year = {2002}, tags = {rules, programming, rule-based}, researchr = {http://researchr.org/publication/rule%3A2002}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the 2002 ACM SIGPLAN Workshop on Rule-Based Programming, Pittsburgh, Pennsylvania, USA, 2002}, conference = {RULE}, editor = {Bernd Fischer and Eelco Visser}, publisher = {ACM}, isbn = {1-58113-606-4}, }