% Bibliography downloaded from https://researchr.org/downloadbibtex/bibliography/language-composition @inproceedings{CordyHP88, title = {TXL: a rapid prototyping system for programming language dialects}, author = {James R. Cordy and Charles D. Halpern-Hamu and Eric Promislow}, year = {1988}, doi = {10.1109/ICCL.1988.13075}, url = {http://dx.doi.org/10.1109/ICCL.1988.13075}, tags = {programming languages, meta programming, meta-model, TXL, programming, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/CordyHP88}, cites = {0}, citedby = {1}, pages = {280-285}, booktitle = {1988 Internation Conference on Computer Languages, October 9-13, 1988, Miami, Florida, USA}, publisher = {IEEE}, } @inproceedings{PetersonHE99, title = {Lambda in Motion: Controlling Robots with Haskell}, author = {John Peterson and Paul Hudak and Conal Elliott}, year = {1999}, url = {http://link.springer.de/link/service/series/0558/bibs/1551/15510091.htm}, tags = {Haskell}, researchr = {https://researchr.org/publication/PetersonHE99}, cites = {0}, citedby = {1}, pages = {91-105}, booktitle = {Practical Aspects of Declarative Languages, First International Workshop, PADL 99, San Antonio, Texas, USA, January 18-19, 1999, Proceedings}, editor = {Gopal Gupta}, volume = {1551}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-65527-1}, } @inproceedings{BrandDHJ01, 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 = {10.1016/S1571-0661(04)80917-4}, url = {https://doi.org/10.1016/S1571-0661(04)80917-4}, tags = {programming languages, rule-based, meta programming, SDF, meta-model, architecture, model-driven development, source-to-source, DSL, metaprogramming, Meta-Environment, Cobol, ASF+SDF, open-source, meta-objects}, researchr = {https://researchr.org/publication/BrandDHJ01}, cites = {0}, citedby = {3}, pages = {365-370}, booktitle = {Compiler Construction, 10th International Conference, CC 2001 Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2001 Genova, Italy, April 2-6, 2001, Proceedings}, editor = {Reinhard Wilhelm}, volume = {2027}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-41861-X}, } @article{Nilsson-NymanHME09, title = {Declarative Intraprocedural Flow Analysis of Java Source Code}, author = {Emma Nilsson-Nyman and Görel Hedin and Eva Magnusson and Torbjörn Ekman}, year = {2009}, doi = {10.1016/j.entcs.2009.09.046}, url = {http://dx.doi.org/10.1016/j.entcs.2009.09.046}, tags = {Java, points-to analysis, analysis, data-flow, source-to-source, data-flow analysis, open-source}, researchr = {https://researchr.org/publication/Nilsson-NymanHME09}, cites = {0}, citedby = {1}, journal = {Electronic Notes in Theoretical Computer Science}, volume = {238}, number = {5}, pages = {155-171}, } @article{Bentley86, title = {Programming pearls: little languages}, author = {Bentley, Jon}, year = {1986}, doi = {10.1145/6424.315691}, url = {http://doi.acm.org/10.1145/6424.315691}, tags = {programming languages, little language, programming}, researchr = {https://researchr.org/publication/Bentley86}, cites = {0}, citedby = {1}, journal = {Commun. ACM}, volume = {29}, } @inproceedings{KieburtzMBHKLOSSW96, title = {A Software Engineering Experiment in Software Component Generation}, author = {Richard B. Kieburtz and Laura McKinney and Jeffrey M. Bell and James Hook and Alex Kotov and Jeffrey Lewis and Dino Oliva and Tim Sheard and Ira Smith and Lisa Walton}, year = {1996}, url = {http://portal.acm.org/citation.cfm?id=227726.227842}, tags = {control systems, programming languages, object-oriented programming, reusable components, translation, software components, language engineering, software language engineering, software component, testing, reuse, software engineering, C++, subject-oriented programming, feature-oriented programming, domain-specific language}, researchr = {https://researchr.org/publication/KieburtzMBHKLOSSW96}, cites = {0}, citedby = {1}, pages = {542-552}, booktitle = {ICSE}, } @article{MurerOSS96, title = {Iteration Abstraction in Sather}, author = {Stephan Murer and Stephen M. Omohundro and David Stoutamire and Clemens A. Szyperski}, year = {1996}, doi = {10.1145/225540.225541}, url = {http://doi.acm.org/10.1145/225540.225541}, tags = {abstraction}, researchr = {https://researchr.org/publication/MurerOSS96}, cites = {0}, citedby = {1}, journal = {ACM Transactions on Programming Languages and Systems}, volume = {18}, number = {1}, pages = {1-15}, } @inproceedings{Lammel01:0, title = {Grammar Adaptation}, author = {Ralf Lämmel}, year = {2001}, url = {http://link.springer.de/link/service/series/0558/bibs/2021/20210550.htm}, tags = {semantics, rule-based, refactoring, transformation language, maintenance, rule-based refactoring, transformation, grammar}, researchr = {https://researchr.org/publication/Lammel01%3A0}, cites = {0}, citedby = {1}, pages = {550-570}, booktitle = {FME 2001: Formal Methods for Increasing Software Productivity, International Symposium of Formal Methods Europe, Berlin, Germany, March 12-16, 2001, Proceedings}, editor = {José Nuno Oliveira and Pamela Zave}, volume = {2021}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-41791-5}, } @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 = {10.1007/3-540-45937-5_12}, url = {https://doi.org/10.1007/3-540-45937-5_12}, tags = {GLR parsing, syntax definition, SDF, lexical syntax, scannerless, disambiguation, GLR, context-aware, parsing, scannerless parsing, ASF+SDF, SGLR, grammar}, researchr = {https://researchr.org/publication/BrandSVV02}, cites = {0}, citedby = {4}, pages = {143-158}, booktitle = {Compiler Construction, 11th International Conference, CC 2002, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2002, Grenoble, France, April 8-12, 2002, Proceedings}, editor = {R. Nigel Horspool}, volume = {2304}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-43369-4}, } @inproceedings{BoisDV04, title = {Refactoring -- Improving Coupling and Cohesion of Existing Code}, author = {Bart Du Bois and Serge Demeyer and Jan Verelst}, year = {2004}, doi = {10.1109/WCRE.2004.33}, url = {http://doi.ieeecomputersociety.org/10.1109/WCRE.2004.33}, tags = {refactoring}, researchr = {https://researchr.org/publication/BoisDV04}, cites = {0}, citedby = {0}, pages = {144-151}, booktitle = {11th Working Conference on Reverse Engineering (WCRE 2004), 8-12 November 2004, Delft, The Netherlands}, publisher = {IEEE Computer Society}, isbn = {0-7695-2243-2}, } @article{AhoJU75, title = {Deterministic Parsing of Ambiguous Grammars}, author = {Alfred V. Aho and Stephen C. Johnson and Jeffrey D. Ullman}, year = {1975}, doi = {10.1145/360933.360969}, url = {http://doi.acm.org/10.1145/360933.360969}, tags = {programming languages, rule-based, rules, C++, programming, context-aware, parsing, grammar}, researchr = {https://researchr.org/publication/AhoJU75}, cites = {0}, citedby = {1}, journal = {Communications of the ACM}, volume = {18}, number = {8}, pages = {441-452}, } @inproceedings{HoferORM08, title = {Polymorphic embedding of {DSLs}}, author = {Christian Hofer and Klaus Ostermann and Tillmann Rendel and Adriaan Moors}, year = {2008}, doi = {10.1145/1449913.1449935}, url = {http://doi.acm.org/10.1145/1449913.1449935}, tags = {programming languages, optimization, semantics, reusable components, Scala, reuse, DSL, programming, program optimization, domain-specific language}, researchr = {https://researchr.org/publication/HoferORM08}, cites = {31}, citedby = {0}, pages = {137-148}, booktitle = {Generative Programming and Component Engineering, 7th International Conference, GPCE 2008, Nashville, TN, USA, October 19-23, 2008, Proceedings}, editor = {Yannis Smaragdakis and Jeremy G. Siek}, publisher = {ACM}, isbn = {978-1-60558-267-2}, } @article{AvgustinovCHKLLMSST06, title = {\emph{abc}: An Extensible {AspectJ} Compiler}, author = {Pavel Avgustinov and Aske Simon Christensen and Laurie J. Hendren and Sascha Kuzins and Jennifer Lhoták and Ondřej Lhoták and Oege de Moor and Damien Sereni and Ganesh Sittampalam and Julian Tibble}, year = {2006}, doi = {10.1007/11687061_9}, url = {http://dx.doi.org/10.1007/11687061_9}, tags = {programming languages, workbench, AspectJ, object-oriented programming, rule-based, Java, data-flow language, design research, language design, data-flow programming, data-flow, code generation, type checking, reviewing, aspect oriented programming, compiler, programming, subject-oriented programming, language workbench, design, extensible language, feature-oriented programming}, researchr = {https://researchr.org/publication/AvgustinovCHKLLMSST06}, cites = {0}, citedby = {1}, journal = {Transactions on Aspect-Oriented Software Development}, pages = {293-334}, } @article{MeijerV00, title = {Haskell Server Pages - Functional Programming and the Battle for the Middle Tier}, author = {Erik Meijer and Danny van Velzen}, year = {2000}, url = {http://www.elsevier.com/gej-ng/31/29/23/76/33/show/Products/notes/index.htt#004}, tags = {functional programming, Haskell, programming}, researchr = {https://researchr.org/publication/MeijerV00}, cites = {0}, citedby = {1}, journal = {Electronic Notes in Theoretical Computer Science}, volume = {41}, number = {1}, pages = {74}, } @article{Duca06b, title = {Traits: A Mechanism for fine-grained Reuse}, author = {Stéphane Ducasse and Oscar Nierstrasz and Nathanael Schärli and Roel Wuyts and Andrew Black}, year = {2006}, month = {mar}, doi = {10.1145/1119479.1119483}, url = {http://www.iam.unibe.ch/~scg/Archive/Papers/Duca06bTOPLASTraits.pdf}, tags = {rule-based, meta-model, modeling language, modeling, language modeling, reuse, Meta-Environment}, researchr = {https://researchr.org/publication/Duca06b}, cites = {0}, citedby = {1}, journal = {ACM Transactions on Programming Languages and Systems (TOPLAS)}, volume = {28}, number = {2}, } @mastersthesis{Valkering2007, title = {Syntax error handling in scannerless generalized LR parsers}, author = {R. Valkering}, year = {2007}, month = {August}, tags = {parsing, scannerless parsing}, researchr = {https://researchr.org/publication/Valkering2007}, cites = {0}, citedby = {1}, school = {Programming Research Group, University of Amsterdam}, address = {Amsterdam, The Netherlands}, } @inproceedings{Riehl06:0, title = {Assimilating MetaBorg: : embedding language tools in languages}, author = {Jonathan Riehl}, year = {2006}, doi = {10.1145/1173706.1173710}, url = {http://doi.acm.org/10.1145/1173706.1173710}, researchr = {https://researchr.org/publication/Riehl06%3A0}, cites = {0}, citedby = {0}, pages = {21-28}, booktitle = {Generative Programming and Component Engineering, 5th International Conference, GPCE 2006, Portland, Oregon, USA, October 22-26, 2006, Proceedings}, editor = {Stan Jarzabek and Douglas C. Schmidt and Todd L. Veldhuizen}, publisher = {ACM}, isbn = {1-59593-237-2}, } @inproceedings{SimonyiCC06, title = {Intentional software}, author = {Charles Simonyi and Magnus Christerson and Shane Clifford}, year = {2006}, doi = {10.1145/1167473.1167511}, url = {http://doi.acm.org/10.1145/1167473.1167511}, tags = {generative programming, workbench, parallel programming, language workbench, domain-specific language}, researchr = {https://researchr.org/publication/SimonyiCC06}, cites = {0}, citedby = {1}, pages = {451-464}, booktitle = {Proceedings of the 21th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2006}, editor = {Peri L. Tarr and William R. Cook}, publisher = {ACM}, isbn = {1-59593-348-4}, } @inproceedings{WuGM09, title = {Unit Testing for Domain-Specific Languages}, author = {Hui Wu and Jeffrey G. Gray and Marjan Mernik}, year = {2009}, doi = {10.1007/978-3-642-03034-5_7}, url = {http://dx.doi.org/10.1007/978-3-642-03034-5_7}, tags = {programming languages, Java, case study, functional programming, testing, reuse, C++, debugging, DSL, abstraction, domain-specific language}, researchr = {https://researchr.org/publication/WuGM09}, cites = {0}, citedby = {0}, pages = {125-147}, booktitle = {Domain-Specific Languages, IFIP TC 2 Working Conference, DSL 2009, Oxford, UK, July 15-17, 2009, Proceedings}, editor = {Walid Mohamed Taha}, volume = {5658}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-03033-8}, } @inproceedings{GouldSD04, title = {Static Checking of Dynamically Generated Queries in Database Applications}, author = {Carl Gould and Zhendong Su and Premkumar T. Devanbu}, year = {2004}, url = {http://csdl.computer.org/comp/proceedings/icse/2004/2163/00/21630645abs.htm}, tags = {database}, researchr = {https://researchr.org/publication/GouldSD04}, cites = {0}, citedby = {1}, pages = {645-654}, booktitle = {26th International Conference on Software Engineering (ICSE 2004), 23-28 May 2004, Edinburgh, United Kingdom}, publisher = {IEEE Computer Society}, isbn = {0-7695-2163-0}, } @inproceedings{CalcagnoTHL03, title = {Implementing Multi-stage Languages Using ASTs, Gensym, and Reflection}, author = {Cristiano Calcagno and Walid Taha and Liwen Huang and Xavier Leroy}, year = {2003}, url = {http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=2830&spage=57}, tags = {reflection}, researchr = {https://researchr.org/publication/CalcagnoTHL03}, cites = {0}, citedby = {1}, pages = {57-76}, booktitle = {Generative Programming and Component Engineering, Second International Conference, GPCE 2003, Erfurt, Germany, September 22-25, 2003, Proceedings}, editor = {Frank Pfenning and Yannis Smaragdakis}, volume = {2830}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-20102-5}, } @inproceedings{HemelV09, title = {{PIL}: A Platform Independent Language for Retargetable {DSLs}}, author = {Zef Hemel and Eelco Visser}, year = {2009}, doi = {10.1007/978-3-642-12107-4_17}, url = {http://dx.doi.org/10.1007/978-3-642-12107-4_17}, tags = {DSL}, researchr = {https://researchr.org/publication/HemelV09}, cites = {0}, citedby = {1}, pages = {224-243}, booktitle = {Software Language Engineering, Second International Conference, SLE 2009}, editor = {Mark G. J. van den Brand and Dragan Gasevic and Jeffrey G. Gray}, volume = {5969}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-12106-7}, } @article{BertrandA99, title = {BDL: A Specialized Language for Per-Object Reactive Control}, author = {Frédéric Bertrand and Michel Augeraud}, year = {1999}, url = {http://computer.org/tse/ts1999/e0347abs.htm}, tags = {meta-model, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/BertrandA99}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {25}, number = {3}, pages = {347-362}, } @inproceedings{Cunningham08, title = {A little language for surveys: constructing an internal DSL in Ruby}, author = {H. Cunningham}, year = {2008}, doi = {10.1145/1593105.1593181}, url = {http://doi.acm.org/10.1145/1593105.1593181}, tags = {programming languages, little language, survey, DSL, programming, Ruby, domain-specific language}, researchr = {https://researchr.org/publication/Cunningham08}, cites = {17}, citedby = {0}, booktitle = {ACM-SE 46: Proceedings of the 46th Annual Southeast Regional Conference on XX}, address = {New York, NY, USA}, publisher = {ACM}, isbn = {978-1-60558-105-7}, } @inproceedings{HuangYHTLK04:0, title = {Securing web application code by static analysis and runtime protection}, author = {Yao-Wen Huang and Fang Yu and Christian Hang and Chung-Hung Tsai and Der-Tsai Lee and Sy-Yen Kuo}, year = {2004}, doi = {10.1145/988672.988679}, url = {http://doi.acm.org/10.1145/988672.988679}, tags = {analysis, static analysis, web applications}, researchr = {https://researchr.org/publication/HuangYHTLK04%3A0}, cites = {0}, citedby = {1}, pages = {40-52}, booktitle = {Proceedings of the 13th international conference on World Wide Web, WWW 2004, New York, NY, USA, May 17-20, 2004}, editor = {Stuart I. Feldman and Mike Uretsky and Marc Najork and Craig E. Wills}, publisher = {ACM}, isbn = {1-58113-844-X}, } @inproceedings{KiczalesHHKPG01, title = {An Overview of AspectJ}, author = {Gregor Kiczales and Erik Hilsdale and Jim Hugunin and Mik Kersten and Jeffrey Palm and William G. Griswold}, year = {2001}, url = {http://link.springer.de/link/service/series/0558/bibs/2072/20720327.htm}, tags = {AspectJ, object-oriented programming, Java, meta programming, meta-model, AOP, model-driven development, object-role modeling, aspect oriented programming, compiler, subject-oriented programming, Meta-Environment, feature-oriented programming}, researchr = {https://researchr.org/publication/KiczalesHHKPG01}, cites = {0}, citedby = {1}, pages = {327-353}, booktitle = {ECOOP 2001 - Object-Oriented Programming, 15th European Conference, Budapest, Hungary, June 18-22, 2001, Proceedings}, editor = {Jørgen Lindskov Knudsen}, volume = {2072}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-42206-4}, } @article{KastensW94, title = {Modularity and Reusability in Attribute Grammars}, author = {Uwe Kastens and William M. Waite}, year = {1994}, url = {http://portal.acm.org/citation.cfm?id=191491}, tags = {attribute grammars, reuse, grammar}, researchr = {https://researchr.org/publication/KastensW94}, cites = {0}, citedby = {1}, journal = {Acta Informatica}, volume = {31}, number = {7}, pages = {601-627}, } @article{BrandJKO00, title = {Efficient annotated terms}, author = {Mark G. J. van den Brand and H. A. de Jong and Paul Klint and Pieter A. Olivier}, year = {2000}, doi = {10.1002/(SICI)1097-024X(200003)30:3\%3C259::AID-SPE298\%3E3.0.CO;2-Y}, url = {https://doi.org/10.1002/(SICI)1097-024X(200003)30:3\%3C259::AID-SPE298\%3E3.0.CO;2-Y}, tags = {rule-based, Java, parsing}, researchr = {https://researchr.org/publication/BrandJKO00}, cites = {0}, citedby = {1}, journal = {Software: Practice and Experience}, volume = {30}, number = {3}, pages = {259-291}, } @inproceedings{SmaragdakisB97, title = {DiSTiL: A Transformation Library for Data Structures}, author = {Yannis Smaragdakis and Don S. Batory}, year = {1997}, url = {http://www.usenix.org/publications/library/proceedings/dsl97/smaragdakis.html}, tags = {data-flow, DSL, transformation}, researchr = {https://researchr.org/publication/SmaragdakisB97}, cites = {0}, citedby = {1}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, publisher = {USENIX}, } @article{Fowler09-0, title = {A Pedagogical Framework for Domain-Specific Languages}, author = {Martin Fowler}, year = {2009}, doi = {10.1109/MS.2009.85}, url = {http://doi.ieeecomputersociety.org/10.1109/MS.2009.85}, tags = {domain-specific language}, researchr = {https://researchr.org/publication/Fowler09-0}, cites = {0}, citedby = {1}, journal = {IEEE Software}, volume = {26}, number = {4}, pages = {13-14}, } @article{Bracha07, title = {Executable Grammars in Newspeak}, author = {Gilad Bracha}, year = {2007}, doi = {10.1016/j.entcs.2007.10.004}, url = {http://dx.doi.org/10.1016/j.entcs.2007.10.004}, tags = {grammar}, researchr = {https://researchr.org/publication/Bracha07}, cites = {0}, citedby = {2}, journal = {Electronic Notes in Theoretical Computer Science}, volume = {193}, pages = {3-18}, } @article{CordyHP91, title = {{TXL}: A Rapid Prototyping System for Programming Language Dialects}, author = {James R. Cordy and Charles D. Halpern-Hamu and Eric Promislow}, year = {1991}, doi = {10.1109/ICCL.1988.13075}, url = {https://doi.org/10.1109/ICCL.1988.13075}, tags = {programming languages, TXL, programming}, researchr = {https://researchr.org/publication/CordyHP91}, cites = {0}, citedby = {1}, journal = {Computer Languages, Systems \& Structures}, volume = {16}, number = {1}, pages = {97-107}, } @article{DohM01, title = {Composing Programming Languages by Combining Action-Semantics Modules}, author = {Kyung-Goo Doh and Peter D. Mosses}, year = {2001}, url = {http://www.elsevier.com/gej-ng/31/29/23/73/27/show/Products/notes/index.htt#008}, tags = {programming languages, semantics, action semantics, programming}, researchr = {https://researchr.org/publication/DohM01}, cites = {0}, citedby = {0}, journal = {Electronic Notes in Theoretical Computer Science}, volume = {44}, number = {2}, pages = {87-109}, } @article{Langston90-1, title = {Little Languages for Music}, author = {Peter S. Langston}, year = {1990}, tags = {little language}, researchr = {https://researchr.org/publication/Langston90-1}, cites = {0}, citedby = {0}, journal = {Computing Systems}, volume = {3}, number = {2}, pages = {193-288}, } @inproceedings{CaseyH11, title = {MetaLexer: a modular lexical specification language}, author = {Andrew Casey and Laurie J. Hendren}, year = {2011}, doi = {10.1145/1960275.1960279}, url = {http://doi.acm.org/10.1145/1960275.1960279}, researchr = {https://researchr.org/publication/CaseyH11}, cites = {0}, citedby = {0}, pages = {7-18}, booktitle = {Proceedings of the 10th International Conference on Aspect-Oriented Software Development, AOSD 2011, Porto de Galinhas, Brazil, March 21-25, 2011}, editor = {Paulo Borba and Shigeru Chiba}, publisher = {ACM}, isbn = {978-1-4503-0605-8}, } @inproceedings{Aldrich05, title = {Open Modules: Modular Reasoning About Advice}, author = {Jonathan Aldrich}, year = {2005}, doi = {10.1007/11531142_7}, url = {http://dx.doi.org/10.1007/11531142_7}, tags = {source-to-source, open-source}, researchr = {https://researchr.org/publication/Aldrich05}, cites = {0}, citedby = {1}, pages = {144-168}, booktitle = {ECOOP 2005 - Object-Oriented Programming, 19th European Conference, Glasgow, UK, July 25-29, 2005, Proceedings}, editor = {Andrew P. Black}, volume = {3586}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-27992-X}, } @inproceedings{ErdwegGR12, title = {Language composition untangled}, author = {Sebastian Erdweg and Paolo G. Giarrusso and Tillmann Rendel}, year = {2012}, doi = {10.1145/2427048.2427055}, url = {http://doi.acm.org/10.1145/2427048.2427055}, researchr = {https://researchr.org/publication/ErdwegGR12}, cites = {0}, citedby = {0}, pages = {7}, booktitle = {International Workshop on Language Descriptions, Tools, and Applications, LDTA '12, Tallinn, Estonia, March 31 - April 1, 2012}, editor = {Anthony Sloane and Suzana Andova}, publisher = {ACM}, isbn = {978-1-4503-1536-4}, } @article{Bosch97:1, title = {Delegating Compiler Objects: Modularity and Reusability in Language Engineering}, author = {Jan Bosch}, year = {1997}, tags = {meta-model, language engineering, reuse, model-driven engineering, compiler, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/Bosch97%3A1}, cites = {0}, citedby = {0}, journal = {Nord. J. Comput.}, volume = {4}, number = {1}, pages = {66-92}, } @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 = {10.1007/978-3-540-87875-9_8}, url = {http://dx.doi.org/10.1007/978-3-540-87875-9_8}, tags = {workflow patterns, model-to-model transformation, interaction design, WebDSL, transformation engineering, completeness, pattern language, meta-model, modeling language, modeling, language engineering, transformation language, language modeling, web engineering, language design, model-driven development, source-to-source, model-driven engineering, object-role modeling, model transformation, web applications, DSL, abstraction, Meta-Environment, workflow, process modeling, WebWorkFlow, meta-objects, transformation, domain-specific language}, researchr = {https://researchr.org/publication/HemelVV08}, cites = {0}, citedby = {6}, pages = {113-127}, booktitle = {Model Driven Engineering Languages and Systems, 11th International Conference, MoDELS 2008, Toulouse, France, September 28 - October 3, 2008. Proceedings}, editor = {Krzysztof Czarnecki and Ileana Ober and Jean-Michel Bruel and Axel Uhl and Markus Völter}, volume = {5301}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-87874-2}, } @book{778164, title = {Invasive Software Composition}, author = {A\ssmann, U.}, year = {2003}, tags = {composition}, researchr = {https://researchr.org/publication/778164}, cites = {0}, citedby = {0}, address = {Secaucus, NJ, USA}, publisher = {Springer-Verlag New York, Inc.}, isbn = {3540443851}, } @inproceedings{LammelVV03, title = {Strategic programming meets adaptive programming}, author = {Ralf Lämmel and Eelco Visser and Joost Visser}, year = {2003}, doi = {10.1145/643603.643621}, url = {http://doi.acm.org/10.1145/643603.643621}, tags = {object-oriented programming, meta programming, generic programming, separation of concerns, traversal, data-flow programming, data-flow, strategies, graph-rewriting, adaptive programming, strategic programming, aspect oriented programming, programming, subject-oriented programming, Meta-Environment, rewriting, systematic-approach, rewriting strategies, feature-oriented programming, meta-objects}, researchr = {https://researchr.org/publication/LammelVV03}, cites = {0}, citedby = {1}, pages = {168-177}, booktitle = {AOSD}, } @inproceedings{WarthP07, title = {OMeta: an object-oriented language for pattern matching}, author = {Alessandro Warth and Ian Piumarta}, year = {2007}, doi = {10.1145/1297081.1297086}, url = {http://doi.acm.org/10.1145/1297081.1297086}, tags = {programming languages, OMetaCaml, object-oriented programming, meta-programming system, meta programming, pattern language, pattern matching, subject-oriented programming, Meta-Environment, feature-oriented programming, meta-objects}, researchr = {https://researchr.org/publication/WarthP07}, cites = {0}, citedby = {1}, pages = {11-19}, booktitle = {Proceedings of the 2007 Symposium on Dynamic Languages, DLS 2007, October 22, 2007, Montreal, Quebec, Canada}, editor = {Pascal Costanza and Robert Hirschfeld}, publisher = {ACM}, isbn = {978-1-59593-868-8}, } @inproceedings{KatsKV08, 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 = {rule-based, Eclipse, syntax definition, completeness, SDF, SQL, C++, code generation, abstraction, Spoofax, Meta-Environment, parsing, scannerless parsing, extensible language, ASF+SDF, SGLR, query language, domain-specific language}, researchr = {https://researchr.org/publication/KatsKV08}, cites = {0}, citedby = {1}, booktitle = {Proceedings of the Eight Workshop on Language Descriptions, Tools, and Applications}, editor = {Jurgen J. Vinju and Adrian Johnstone}, volume = {238}, number = {5}, series = {Electronic Notes in Theoretical Computer Science }, publisher = {Elsevier}, } @inproceedings{GuyerL99, title = {An annotation language for optimizing software libraries}, author = {Samuel Z. Guyer and Calvin Lin}, year = {1999}, doi = {10.1145/331960.331970}, url = {http://doi.acm.org/10.1145/331960.331970}, tags = {optimization, DSL}, researchr = {https://researchr.org/publication/GuyerL99}, cites = {0}, citedby = {1}, pages = {39-52}, booktitle = {DSL}, } @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 = {10.1145/1640089.1640122}, url = {http://doi.acm.org/10.1145/1640089.1640122}, tags = {parsing algorithm, semantics, rule-based, Java, SDF, composition, analysis, principles, C++, code generation, context-aware, Meta-Environment, parsing, scannerless parsing, systematic-approach, island grammars, ASF+SDF, grammar, Stratego}, researchr = {https://researchr.org/publication/KatsJNV09}, cites = {0}, citedby = {1}, pages = {445-464}, booktitle = {Proceedings of the 24th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2009}, editor = {Shail Arora and Gary T. Leavens}, publisher = {ACM}, isbn = {978-1-60558-766-0}, } @inproceedings{Bawden99, title = {Quasiquotation in Lisp}, author = {Alan Bawden}, year = {1999}, researchr = {https://researchr.org/publication/Bawden99}, cites = {0}, citedby = {1}, pages = {4-12}, booktitle = {PEPM}, } @inproceedings{NakataniAOP99, title = {Jargons for domain engineering}, author = {Lloyd H. Nakatani and Mark A. Ardis and Robert G. Olsen and Paul M. Pontrelli}, year = {1999}, doi = {10.1145/331960.331966}, url = {http://doi.acm.org/10.1145/331960.331966}, tags = {DSL}, researchr = {https://researchr.org/publication/NakataniAOP99}, cites = {0}, citedby = {1}, pages = {15-24}, booktitle = {DSL}, } @techreport{Schmitz06-0, title = {Modular Syntax Demands Verification}, author = {Sylvain Schmitz}, year = {2006}, month = {oct}, url = {http://www.lsv.ens-cachan.fr/Publis/PAPERS/PDF/schmitz-RR0632.pdf}, researchr = {https://researchr.org/publication/Schmitz06-0}, cites = {0}, citedby = {0}, institution = {Laboratoire {I3S}, Universit{\'e} de Nice-Sophia Antipolis, France}, number = {I3S/RR-2006-32-FR}, } @inproceedings{BirdGH00, title = {Object Role Modelling and XML-Schema}, author = {Linda Bird and Andrew Goodchild and Terry A. Halpin}, year = {2000}, url = {http://link.springer.de/link/service/series/0558/bibs/1920/19200309.htm}, tags = {rule-based, data-flow language, redundancy, meta-model, XML, modeling language, XML Schema, modeling, language modeling, data-flow, object-role modeling, Meta-Environment, process modeling, systematic-approach, meta-objects}, researchr = {https://researchr.org/publication/BirdGH00}, cites = {0}, citedby = {0}, pages = {309-322}, booktitle = {Conceptual Modeling - ER 2000, 19th International Conference on Conceptual Modeling, Salt Lake City, Utah, USA, October 9-12, 2000, Proceedings}, editor = {Alberto H. F. Laender and Stephen W. Liddle and Veda C. Storey}, volume = {1920}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-41072-4}, } @article{Spinellis01:0, title = {Notable design patterns for domain-specific languages}, author = {Diomidis Spinellis}, year = {2001}, doi = {10.1016/S0164-1212(00)00089-3}, url = {http://dx.doi.org/10.1016/S0164-1212(00)00089-3}, tags = {DSL engineering, pattern language, dsl examples, language engineering, language design, DSL, design, domain-specific language}, researchr = {https://researchr.org/publication/Spinellis01%3A0}, cites = {0}, citedby = {1}, journal = {Journal of Systems and Software}, volume = {56}, number = {1}, pages = {91-99}, } @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 = {10.1016/j.entcs.2008.03.046}, url = {http://dx.doi.org/10.1016/j.entcs.2008.03.046}, tags = {programming languages, semantics, rule-based, syntax definition, YACC, precedence rule, SDF, Stratego/XT, language engineering, grammar engineering, PHP, rules, C++, migration, compiler, programming, operational semantics, priority, parsing, scannerless parsing, systematic-approach, ASF+SDF, grammar, Stratego}, researchr = {https://researchr.org/publication/BouwersBV08}, cites = {0}, citedby = {1}, journal = {Electronic Notes in Theoretical Computer Science}, volume = {203}, number = {2}, pages = {85-101}, } @inproceedings{SheardBP99, title = {DSL implementation using staging and monads}, author = {Tim Sheard and Zine-El-Abidine Benaissa and Emir Pasalic}, year = {1999}, doi = {10.1145/331960.331975}, url = {http://doi.acm.org/10.1145/331960.331975}, tags = {DSL}, researchr = {https://researchr.org/publication/SheardBP99}, cites = {0}, citedby = {1}, pages = {81-94}, booktitle = {DSL}, } @proceedings{dsl:1997, title = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, year = {1997}, tags = {DSL, domain-specific language}, researchr = {https://researchr.org/publication/dsl%3A1997}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, conference = {DSL}, publisher = {USENIX}, } @inproceedings{Visser07, title = {{WebDSL}: {A} Case Study in Domain-Specific Language Engineering}, author = {Eelco Visser}, year = {2007}, doi = {10.1007/978-3-540-88643-3_7}, url = {http://dx.doi.org/10.1007/978-3-540-88643-3_7}, tags = {WebDSL, reusable components, DSL engineering, web application development, data-flow language, pattern language, case study, software components, SDF, meta-model, abstract syntax, modeling language, Stratego/XT, language engineering, software language engineering, language modeling, software component, web engineering, language design, reuse, model-driven development, data-flow, survey, software engineering, model-driven engineering, web applications, DSL, Meta-Environment, incremental, design, process modeling, systematic-approach, ASF+SDF, language, Stratego, domain-specific language}, researchr = {https://researchr.org/publication/Visser07}, cites = {0}, citedby = {9}, pages = {291-373}, booktitle = {Generative and Transformational Techniques in Software Engineering II, International Summer School, {GTTSE} 2007}, editor = {Ralf Lämmel and Joost Visser and João Saraiva}, volume = {5235}, series = {Lecture Notes in Computer Science}, address = {Braga, Portugal}, publisher = {Springer}, isbn = {978-3-540-88642-6}, } @inproceedings{Crew97, title = {ASTLOG: A Language for Examining Abstract Syntax Trees}, author = {Roger F. Crew}, year = {1997}, url = {http://www.usenix.org/publications/library/proceedings/dsl97/crew.html}, tags = {abstract syntax, DSL}, researchr = {https://researchr.org/publication/Crew97}, cites = {0}, citedby = {1}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, publisher = {USENIX}, } @article{Wirth77a:0, title = {What Can We Do about the Unnecessary Diversity of Notation for Syntactic Definitions?}, author = {Niklaus Wirth}, year = {1977}, doi = {10.1145/359863.359883}, url = {http://doi.acm.org/10.1145/359863.359883}, tags = {programming languages, syntax definition, programming}, researchr = {https://researchr.org/publication/Wirth77a%3A0}, cites = {0}, citedby = {1}, journal = {Communications of the ACM}, volume = {20}, number = {11}, pages = {822-823}, } @article{Jeffery03, title = {Generating LR syntax error messages from examples}, author = {Clinton L. Jeffery}, year = {2003}, doi = {10.1145/937563.937566}, url = {http://doi.acm.org/10.1145/937563.937566}, researchr = {https://researchr.org/publication/Jeffery03}, cites = {0}, citedby = {1}, journal = {ACM Transactions on Programming Languages and Systems}, volume = {25}, number = {5}, pages = {631-640}, } @inproceedings{BoylandG94, title = {Composing Tree Attributions}, author = {John Boyland and Susan L. Graham}, year = {1994}, researchr = {https://researchr.org/publication/BoylandG94}, cites = {0}, citedby = {1}, pages = {375-388}, booktitle = {Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages}, } @article{ChandraRL99, title = {Teapot: A Domain-Specific Language for Writing Cache Coherence Protocols}, author = {Satish Chandra and Brad Richards and James R. Larus}, year = {1999}, url = {http://computer.org/tse/ts1999/e0317abs.htm}, tags = {caching, protocol, writing, domain-specific language}, researchr = {https://researchr.org/publication/ChandraRL99}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {25}, number = {3}, pages = {317-333}, } @article{Priss00, title = {Faceted Knowledge Representation}, author = {Uta Priss}, year = {2000}, url = {http://www.ep.liu.se/ej/etai/2000/002/}, tags = {knowlege representation, faceted knowledge representation, facets}, researchr = {https://researchr.org/publication/Priss00}, cites = {0}, citedby = {0}, journal = {Electron. Trans. Artif. Intell.}, volume = {4}, number = {C}, pages = {21-33}, } @phdthesis{charles91lpg, title = {A practical method for constructing efficient {LALR(K)} parsers with automatic error recovery}, author = {Philippe Charles}, year = {1991}, tags = {parsing}, researchr = {https://researchr.org/publication/charles91lpg}, cites = {0}, citedby = {1}, school = {New York University}, } @misc{Vlissidis1996, title = {Generation Gap}, author = {J. Vlissidis}, year = {1996}, researchr = {https://researchr.org/publication/Vlissidis1996}, cites = {0}, citedby = {0}, howpublished = {C++ Report}, } @article{WuGM08, title = {Grammar-driven generation of domain-specific language debuggers}, author = {Hui Wu and Jeffrey G. Gray and Marjan Mernik}, year = {2008}, doi = {10.1002/spe.863}, url = {http://dx.doi.org/10.1002/spe.863}, tags = {debugging, grammar, domain-specific language}, researchr = {https://researchr.org/publication/WuGM08}, cites = {0}, citedby = {1}, journal = {Software: Practice and Experience}, volume = {38}, number = {10}, pages = {1073-1103}, } @article{TahaS00, title = {{MetaML} and multi-stage programming with explicit annotations}, author = {Walid Taha and Tim Sheard}, year = {2000}, doi = {10.1016/S0304-3975(00)00053-0}, url = {http://dx.doi.org/10.1016/S0304-3975(00)00053-0}, tags = {programming languages, semantics, rule-based, type soundness, language engineering, software language engineering, language design, principles, type system, software engineering, code generation, type checking, programming, staged computation, design}, researchr = {https://researchr.org/publication/TahaS00}, cites = {0}, citedby = {1}, journal = {Theoretical Computer Science}, volume = {248}, number = {1-2}, pages = {211-242}, } @inproceedings{WangAKS97, title = {The Zephyr Abstract Syntax Description Language}, author = {Daniel C. Wang and Andrew W. Appel and Jeffrey L. Korn and Christopher S. Serra}, year = {1997}, url = {http://www.usenix.org/publications/library/proceedings/dsl97/wang.html}, tags = {abstract syntax, C++, DSL}, researchr = {https://researchr.org/publication/WangAKS97}, cites = {0}, citedby = {1}, pages = {213-228}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, publisher = {USENIX}, } @article{Elliott99:0, title = {An Embedded Modeling Language Approach to Interactive 3D and Multimedia Animation}, author = {Conal Elliott}, year = {1999}, url = {http://computer.org/tse/ts1999/e0291abs.htm}, tags = {modeling language, modeling, language modeling, multimedia, systematic-approach}, researchr = {https://researchr.org/publication/Elliott99%3A0}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {25}, number = {3}, pages = {291-308}, } @article{Lammel03, title = {Typed generic traversal with term rewriting strategies}, author = {Ralf Lämmel}, year = {2003}, doi = {10.1016/S1567-8326(02)00028-0}, url = {http://dx.doi.org/10.1016/S1567-8326(02)00028-0}, tags = {traversal, term rewriting, graph-rewriting, rewriting, rewriting strategies}, researchr = {https://researchr.org/publication/Lammel03}, cites = {0}, citedby = {1}, journal = {Journal of Logic and Algebraic Programming}, volume = {54}, number = {1-2}, pages = {1-64}, } @inproceedings{ClarkT09, title = {Language factories}, author = {Tony Clark and Laurence Tratt}, year = {2009}, doi = {10.1145/1639950.1640062}, url = {http://doi.acm.org/10.1145/1639950.1640062}, tags = {programming languages, DSL, programming, routing, systematic-approach, domain-specific language}, researchr = {https://researchr.org/publication/ClarkT09}, cites = {0}, citedby = {0}, pages = {949-955}, booktitle = {Companion to the 24th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2009, October 25-29, 2009, Orlando, Florida, USA}, editor = {Shail Arora and Gary T. Leavens}, publisher = {ACM}, isbn = {978-1-60558-768-4}, } @inproceedings{WykKBS07, title = {Attribute Grammar-Based Language Extensions for Java}, author = {Eric {Van Wyk} and Lijesh Krishnan and Derek Bodin and August Schwerdfeger}, year = {2007}, doi = {10.1007/978-3-540-73589-2_27}, url = {http://dx.doi.org/10.1007/978-3-540-73589-2_27}, tags = {rule-based, Java, attribute grammars, ableJ, grammar}, researchr = {https://researchr.org/publication/WykKBS07}, cites = {0}, citedby = {5}, pages = {575-599}, booktitle = {ECOOP 2007 - Object-Oriented Programming, 21st European Conference, Berlin, Germany, July 30 - August 3, 2007, Proceedings}, editor = {Erik Ernst}, volume = {4609}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-73588-5}, } @article{Hedin00, title = {Reference Attributed Grammars}, author = {Görel Hedin}, year = {2000}, tags = {attribute grammars, reference attribute grammars, grammar}, researchr = {https://researchr.org/publication/Hedin00}, cites = {0}, citedby = {1}, journal = {Informatica (Slovenia)}, volume = {24}, number = {3}, pages = {301-317}, } @inproceedings{GouldSD04a, title = {JDBC Checker: A Static Analysis Tool for SQL/JDBC Applications}, author = {Carl Gould and Zhendong Su and Premkumar T. Devanbu}, year = {2004}, url = {http://csdl.computer.org/comp/proceedings/icse/2004/2163/00/21630697.pdf}, tags = {SQL, analysis, static analysis}, researchr = {https://researchr.org/publication/GouldSD04a}, cites = {0}, citedby = {1}, pages = {697-698}, booktitle = {26th International Conference on Software Engineering (ICSE 2004), 23-28 May 2004, Edinburgh, United Kingdom}, publisher = {IEEE Computer Society}, isbn = {0-7695-2163-0}, } @article{MacalaSG96, title = {Managing Domain-Specific, Product-Line Development}, author = {Randall R. Macala and Lynn D. Stuckey Jr. and David C. Gross}, year = {1996}, url = {http://www.computer.org:80/software/so1996/s3057abs.htm}, tags = {C++, product line}, researchr = {https://researchr.org/publication/MacalaSG96}, cites = {0}, citedby = {1}, journal = {IEEE Software}, volume = {13}, number = {3}, pages = {57-67}, } @inproceedings{HalfondO05, title = {AMNESIA: analysis and monitoring for NEutralizing SQL-injection attacks}, author = {William G. J. Halfond and Alessandro Orso}, year = {2005}, doi = {10.1145/1101908.1101935}, url = {http://doi.acm.org/10.1145/1101908.1101935}, tags = {injection attack, SQL, analysis}, researchr = {https://researchr.org/publication/HalfondO05}, cites = {0}, citedby = {2}, pages = {174-183}, booktitle = {20th IEEE/ACM International Conference on Automated Software Engineering (ASE 2005), November 7-11, 2005, Long Beach, CA, USA}, editor = {David F. Redmiles and Thomas Ellman and Andrea Zisman}, publisher = {ACM}, } @inproceedings{Banerji87:0, title = {Learning in the Limit in a Growing Language}, author = {Ranan B. Banerji}, year = {1987}, researchr = {https://researchr.org/publication/Banerji87%3A0}, cites = {0}, citedby = {0}, pages = {299-308}, booktitle = {ISMIS}, } @inproceedings{DeBaudS99, title = {A Systematic Approach to Derive the Scope of Software Product Lines}, author = {Jean-Marc DeBaud and Klaus Schmid}, year = {1999}, url = {http://portal.acm.org/citation.cfm?id=302405.302409}, tags = {software product lines, systematic-approach}, researchr = {https://researchr.org/publication/DeBaudS99}, cites = {0}, citedby = {1}, pages = {34-43}, booktitle = {ICSE}, } @article{Samet-TOPLAS-1980, title = {A Coroutine Approach to Parsing}, author = {Hanan Samet}, year = {1980}, doi = {10.1145/357103.357106}, url = {http://doi.acm.org/10.1145/357103.357106}, tags = {programming languages, meta programming, meta-model, modeling language, modeling, language modeling, macros, Meta-Environment, parsing, systematic-approach, grammar}, researchr = {https://researchr.org/publication/Samet-TOPLAS-1980}, cites = {16}, citedby = {0}, journal = {ACM Transactions on Programming Languages and Systems}, volume = {2}, number = {3}, pages = {290-306}, } @article{Tratt08-TOPLAS, title = {Domain specific language implementation via compile-time meta-programming}, author = {Laurence Tratt}, year = {2008}, doi = {10.1145/1391956.1391958}, url = {http://doi.acm.org/10.1145/1391956.1391958}, tags = {programming languages, meta programming, meta-model, embedded software, model-driven development, compiler, DSL, programming, Meta-Environment, extensible language, meta-objects, domain-specific language}, researchr = {https://researchr.org/publication/Tratt08-TOPLAS}, cites = {0}, citedby = {1}, journal = {ACM Transactions on Programming Languages and Systems}, volume = {30}, number = {6}, } @article{ThibaultMC99, title = {Domain-Specific Languages: From Design to Implementation Application to Video Device Drivers Generation}, author = {Scott Thibault and Renaud Marlet and Charles Consel}, year = {1999}, url = {http://computer.org/tse/ts1999/e0363abs.htm}, tags = {language design, design, domain-specific language}, researchr = {https://researchr.org/publication/ThibaultMC99}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {25}, number = {3}, pages = {363-377}, } @article{JonesSantos1998, title = {A Transformation-Based Optimiser for Haskell}, author = {Simon L. Peyton Jones and André L. M. Santos}, year = {1998}, doi = {10.1016/S0167-6423(97)00029-4}, url = {http://dx.doi.org/10.1016/S0167-6423(97)00029-4}, tags = {rule-based, Haskell, compiler, context-aware, compilation, systematic-approach, transformation, program transformation}, researchr = {https://researchr.org/publication/JonesSantos1998}, cites = {53}, citedby = {1}, journal = {Science of Computer Programming}, volume = {32}, number = {1-3}, pages = {3-47}, } @inproceedings{Parr08, title = {The Reuse of Grammars with Embedded Semantic Actions}, author = {Terence John Parr}, year = {2008}, doi = {10.1109/ICPC.2008.36}, url = {http://dx.doi.org/10.1109/ICPC.2008.36}, tags = {syntax definition, reuse, ANTLR, grammar}, researchr = {https://researchr.org/publication/Parr08}, cites = {0}, citedby = {0}, pages = {5-10}, booktitle = {The 16th IEEE International Conference on Program Comprehension, ICPC 2008, Amsterdam, The Netherlands, June 10-13, 2008}, editor = {René L. Krikhaar and Ralf Lämmel and Chris Verhoef}, publisher = {IEEE Computer Society}, } @inproceedings{LiuKM06, title = {Interruptible iterators}, author = {Jed Liu and Aaron Kimball and Andrew C. Myers}, year = {2006}, doi = {10.1145/1111037.1111063}, url = {http://doi.acm.org/10.1145/1111037.1111063}, tags = {C++}, researchr = {https://researchr.org/publication/LiuKM06}, cites = {0}, citedby = {0}, pages = {283-294}, booktitle = {Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2006, Charleston, South Carolina, USA, January 11-13, 2006}, editor = {J. Gregory Morrisett and Simon L. Peyton Jones}, publisher = {ACM}, isbn = {1-59593-027-2}, } @inproceedings{EstublierVI05, title = {Composing Domain-Specific Languages for Wide-Scope Software Engineering Applications}, author = {Jacky Estublier and Germán Vega and Anca Daniela Ionita}, year = {2005}, doi = {10.1007/11557432_6}, url = {http://dx.doi.org/10.1007/11557432_6}, tags = {language engineering, software language engineering, UML, software engineering, domain-specific language}, researchr = {https://researchr.org/publication/EstublierVI05}, cites = {0}, citedby = {0}, pages = {69-83}, booktitle = {Model Driven Engineering Languages and Systems, 8th International Conference, MoDELS 2005, Montego Bay, Jamaica, October 2-7, 2005, Proceedings}, editor = {Lionel C. Briand and Clay Williams}, volume = {3713}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-29010-9}, } @inproceedings{ZookHS04, title = {Generating AspectJ Programs with Meta-AspectJ}, author = {David Zook and Shan Shan Huang and Yannis Smaragdakis}, year = {2004}, url = {http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3286&spage=1}, tags = {AspectJ, meta programming, meta-model, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/ZookHS04}, cites = {0}, citedby = {3}, pages = {1-18}, booktitle = {Generative Programming and Component Engineering: Third International Conference, GPCE 2004, Vancouver, Canada, October 24-28, 2004. Proceedings}, editor = {Gabor Karsai and Eelco Visser}, volume = {3286}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-23580-9}, } @book{SzyperskiSzyperski1998, title = {Component Software - Beyond Object-Oriented Programming}, author = {Szyperski and Clemens Szyperski}, year = {1998}, tags = {object-oriented programming, meta programming, software components, software component, programming, subject-oriented programming, Meta-Environment, feature-oriented programming, meta-objects}, researchr = {https://researchr.org/publication/SzyperskiSzyperski1998}, cites = {0}, citedby = {0}, number = {ISBN 0-201-17888-5 }, publisher = {Addison-Wesley}, } @article{Klint93, title = {A Meta-Environment for Generating Programming Environments}, author = {Paul Klint}, year = {1993}, doi = {10.1145/151257.151260}, url = {http://doi.acm.org/10.1145/151257.151260}, tags = {programming languages, rule-based, translation, syntax definition, meta programming, SDF, meta-model, functional programming, design research, language design, model-driven development, programming, Meta-Environment, incremental, design, ASF+SDF, meta-objects}, researchr = {https://researchr.org/publication/Klint93}, cites = {33}, citedby = {40}, journal = {ACM Transactions on Software Engineering Methodology}, volume = {2}, number = {2}, pages = {176-201}, } @inproceedings{SarkarWD04, title = {A nanopass infrastructure for compiler education}, author = {Dipanwita Sarkar and Oscar Waddell and R. Kent Dybvig}, year = {2004}, doi = {10.1145/1016850.1016878}, url = {http://doi.acm.org/10.1145/1016850.1016878}, tags = {compiler}, researchr = {https://researchr.org/publication/SarkarWD04}, cites = {0}, citedby = {1}, pages = {201-212}, booktitle = {Proceedings of the Ninth ACM SIGPLAN International Conference on Functional Programming, ICFP 2004, Snow Bird, UT, USA, September 19-21, 2004}, editor = {Chris Okasaki and Kathleen Fisher}, publisher = {ACM}, isbn = {1-58113-905-5}, } @article{Kosar2008, title = {A preliminary study on various implementation approaches of domain-specific language}, author = {Toma{\v{z}} Kosar and Pablo E. Mart{\'{\i}}nez L{\'o}pez and Pablo A. Barrientos and Marjan Mernik}, year = {2008}, tags = {DSL engineering, DSL implementation approach, dsl examples, language engineering, DSL, systematic-approach, domain-specific language}, researchr = {https://researchr.org/publication/Kosar2008}, cites = {0}, citedby = {0}, journal = {Information and Software Technology}, volume = {50}, number = {5}, } @inproceedings{GronnigerKRSV08, title = {MontiCore: a framework for the development of textual domain specific languages}, author = {Hans Gr{\"o}nniger and Holger Krahn and Bernhard Rumpe and Martin Schindler and Steven V{\"o}lkel}, year = {2008}, doi = {10.1145/1370175.1370190}, url = {http://doi.acm.org/10.1145/1370175.1370190}, tags = {rule-based, syntax definition, abstract syntax, code generation, systematic-approach, concrete syntax, grammar, domain-specific language}, researchr = {https://researchr.org/publication/GronnigerKRSV08}, cites = {9}, citedby = {0}, pages = {925-926}, booktitle = {30th International Conference on Software Engineering (ICSE 2008), Companion Volume}, editor = {Wilhelm Sch{\"a}fer and Matthew B. Dwyer and Volker Gruhn}, address = {Leipzig, Germany}, publisher = {ACM}, isbn = {978-1-60558-079-1}, } @book{CzarneckiEisenecker1999, title = {Generative Programming: Methods, Techniques and Applications}, author = {Krzysztof Czarnecki and U. Eisenecker.}, year = {1999}, tags = {generative programming, programming}, researchr = {https://researchr.org/publication/CzarneckiEisenecker1999}, cites = {0}, citedby = {1}, publisher = {Addison- Wesley}, } @inproceedings{CharlesFS07, title = {IMP: a meta-tooling platform for creating language-specific ides in eclipse}, author = {Philippe Charles and Robert M. Fuhrer and Stanley M. Sutton Jr.}, year = {2007}, doi = {10.1145/1321631.1321715}, url = {http://doi.acm.org/10.1145/1321631.1321715}, tags = {programming languages, object-oriented programming, rule-based, IMP, Eclipse, meta programming, meta-model, design research, language design, reuse, model-driven development, source-to-source, code completion, aspect oriented programming, DSL, programming, abstraction, Meta-Environment, incremental, design, feature-oriented programming, IDE, open-source, meta-objects, domain-specific language}, researchr = {https://researchr.org/publication/CharlesFS07}, cites = {0}, citedby = {1}, pages = {485-488}, booktitle = {22nd IEEE/ACM International Conference on Automated Software Engineering (ASE 2007), November 5-9, 2007, Atlanta, Georgia, USA}, editor = {R. E. Kurt Stirewalt and Alexander Egyed and Bernd Fischer}, publisher = {ACM}, isbn = {978-1-59593-882-4 }, } @article{cs-SE-9903002, title = {An Algebraic Programming Style for Numerical Software and its Optimization}, author = {T. B. Dinesh and Magne Haveraaen and Jan Heering}, year = {1999}, url = {http://arxiv.org/abs/cs.SE/9903002}, note = {informal publication}, tags = {optimization, algebra, programming, program optimization}, researchr = {https://researchr.org/publication/cs-SE-9903002}, cites = {0}, citedby = {1}, journal = {CoRR}, volume = {cs.SE/9903002}, } @inproceedings{TatsuboriCIK99, title = {OpenJava: A Class-Based Macro System for Java}, author = {Michiaki Tatsubori and Shigeru Chiba and Kozo Itano and Marc-Olivier Killijian}, year = {1999}, url = {http://link.springer.de/link/service/series/0558/bibs/1826/18260117.htm}, tags = {macro, rule-based, Java, meta programming, meta-model, macros, Meta-Environment, extensible language, meta-objects}, researchr = {https://researchr.org/publication/TatsuboriCIK99}, cites = {0}, citedby = {1}, pages = {117-133}, booktitle = {Reflection and Software Engineering, Papers from OORaSE 1999, 1st OOPSLA Workshop on Reflection and Software Engineering, Denver, CO, USA, November 1999}, editor = {Walter Cazzola and Robert J. Stroud and Francesco Tisato}, volume = {1826}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-67761-5}, } @misc{Fowler2004, title = {Language Workbenches: The Killer-App for Domain Specific Languages?}, author = {Martin Fowler}, year = {2005}, url = {http://www.martinfowler.com/articles/languageWorkbench.html}, tags = {programming languages, workbench, object-oriented programming, meta programming, language-oriented programming, meta-model, LOP, model-driven development, programming, subject-oriented programming, language workbench, Meta-Environment, systematic-approach, feature-oriented programming, meta-objects, domain-specific language}, researchr = {https://researchr.org/publication/Fowler2004}, cites = {0}, citedby = {3}, } @article{Neighbors84, title = {The Draco Approach to Constructing Software from Reusable Components}, author = {James M. Neighbors}, year = {1984}, tags = {reusable components, Draco, software components, software component, reuse, systematic-approach}, researchr = {https://researchr.org/publication/Neighbors84}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {10}, number = {5}, pages = {564-574}, } @misc{lopnextprogrammingparadigm, title = {Language Oriented Programming: The Next Programming Paradigm}, author = {Sergey Dmitriev}, year = {2004}, url = {http://www.onboard.jetbrains.com/is1/articles/04/10/lop/mps.pdf}, tags = {programming languages, object-oriented programming, language-oriented programming, LOP, programming paradigms, programming, subject-oriented programming, feature-oriented programming}, researchr = {https://researchr.org/publication/lopnextprogrammingparadigm}, cites = {0}, citedby = {1}, } @inproceedings{ErwigW09, title = {A DSL for Explaining Probabilistic Reasoning}, author = {Martin Erwig and Eric Walkingshaw}, year = {2009}, doi = {10.1007/978-3-642-03034-5_16}, url = {http://dx.doi.org/10.1007/978-3-642-03034-5_16}, tags = {DSL}, researchr = {https://researchr.org/publication/ErwigW09}, cites = {0}, citedby = {0}, pages = {335-359}, booktitle = {Domain-Specific Languages, IFIP TC 2 Working Conference, DSL 2009, Oxford, UK, July 15-17, 2009, Proceedings}, editor = {Walid Mohamed Taha}, volume = {5658}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-03033-8}, } @inproceedings{CookR05, title = {Safe query objects: statically typed objects as remotely executable queries}, author = {William R. Cook and Siddhartha Rai}, year = {2005}, doi = {10.1145/1062455.1062488}, url = {http://doi.acm.org/10.1145/1062455.1062488}, tags = {meta-model, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/CookR05}, cites = {0}, citedby = {1}, pages = {97-106}, booktitle = {27th International Conference on Software Engineering (ICSE 2005), 15-21 May 2005, St. Louis, Missouri, USA}, editor = {Gruia-Catalin Roman and William G. Griswold and Bashar Nuseibeh}, publisher = {ACM}, } @techreport{MoorsPO2008, title = {Parser combinators in Scala}, author = {Adriaan Moors and F. Piessens and Martin Odersky}, year = {2008}, month = {February}, tags = {Scala, parsing}, researchr = {https://researchr.org/publication/MoorsPO2008}, cites = {0}, citedby = {1}, institution = {Department of Computer Science, K.U. Leuven}, } @inproceedings{ReichweinRB99, title = {Slicing spreadsheets: an integrated methodology for spreadsheet testing and debugging}, author = {James Reichwein and Gregg Rothermel and Margaret M. Burnett}, year = {1999}, doi = {10.1145/331960.331968}, url = {http://doi.acm.org/10.1145/331960.331968}, tags = {testing, slicing, debugging, DSL}, researchr = {https://researchr.org/publication/ReichweinRB99}, cites = {0}, citedby = {1}, pages = {25-38}, booktitle = {DSL}, } @inproceedings{DinkelakerEM10, title = {An architecture for composing embedded domain-specific languages}, author = {Tom Dinkelaker and Michael Eichberg and Mira Mezini}, year = {2010}, doi = {10.1145/1739230.1739237}, url = {http://doi.acm.org/10.1145/1739230.1739237}, tags = {architecture, domain-specific language}, researchr = {https://researchr.org/publication/DinkelakerEM10}, cites = {0}, citedby = {0}, pages = {49-60}, booktitle = {Proceedings of the 9th International Conference on Aspect-Oriented Software Development, AOSD 2010, Rennes and Saint-Malo, France, March 15-19, 2010}, editor = {Jean-Marc Jézéquel and Mario Südholt}, publisher = {ACM}, isbn = {978-1-60558-958-9}, } @inproceedings{RendelOH09, title = {Typed self-representation}, author = {Tillmann Rendel and Klaus Ostermann and Christian Hofer}, year = {2009}, doi = {10.1145/1542476.1542509}, url = {http://doi.acm.org/10.1145/1542476.1542509}, researchr = {https://researchr.org/publication/RendelOH09}, cites = {0}, citedby = {0}, pages = {293-303}, booktitle = {Proceedings of the 2009 ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2009, Dublin, Ireland, June 15-21, 2009}, editor = {Michael Hind and Amer Diwan}, publisher = {ACM}, isbn = {978-1-60558-392-1}, } @article{SmaragdakisB02, title = {Mixin layers: an object-oriented implementation technique for refinements and collaboration-based designs}, author = {Yannis Smaragdakis and Don S. Batory}, year = {2002}, doi = {10.1145/505145.505148}, url = {http://doi.acm.org/10.1145/505145.505148}, tags = {rule-based, refinement}, researchr = {https://researchr.org/publication/SmaragdakisB02}, cites = {0}, citedby = {1}, journal = {ACM Transactions on Software Engineering Methodology}, volume = {11}, number = {2}, pages = {215-255}, } @inproceedings{Achenbach-Ostermann:DSAL10, title = {Growing a Dynamic Aspect Language in Ruby}, author = {Michael Achenbach and Klaus Ostermann}, year = {2010}, url = {http://www.dsal.cl/_media/2010/dsal10_achenbach.pdf}, note = {To Appear}, tags = {programming languages, AspectJ, object-oriented programming, deployment, dynamic AOP, growing a language, aspect oriented programming, programming, subject-oriented programming, systematic-approach, feature-oriented programming, Ruby, domain-specific language}, researchr = {https://researchr.org/publication/Achenbach-Ostermann%3ADSAL10}, cites = {18}, citedby = {0}, booktitle = {Proceedings of the 2010 AOSD Workshop on Domain-Specific Aspect Languages}, address = {Rennes and Saint Malo, France}, publisher = {ACM Press}, } @inproceedings{Bell:DSM:2007, title = {Automated Transformation of Statements within Evolving Domain Specific Languages}, author = {Peter Bell}, year = {2007}, tags = {model-to-model transformation, Imperative evolution specification, meta-model, fixed coupling, modeling language, modeling, transformation language, coupled evolution, language modeling, user-defined evolution, software evolution, source-to-source, migration, model transformation, partial evaluation, DSL, database, software product line, Meta-Environment, no evaluation, modelware, process modeling, product line, concrete syntax, meta-objects, transformation, grammar, domain-specific language}, researchr = {https://researchr.org/publication/Bell%3ADSM%3A2007}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the 7th OOPSLA Workshop on Domain-Specific Modeling (DSM’07)}, series = {Computer Science and Information System Reports}, publisher = {University of Jyväskylä, Finland}, } @inproceedings{JenningsB99, title = {Verischemelog: Verilog embedded in Scheme}, author = {James Jennings and Eric Beuscher}, year = {1999}, doi = {10.1145/331960.331978}, url = {http://doi.acm.org/10.1145/331960.331978}, tags = {DSL}, researchr = {https://researchr.org/publication/JenningsB99}, cites = {0}, citedby = {1}, pages = {123-134}, booktitle = {DSL}, } @article{Bentley86c, title = {Little Languages}, author = {Jon Louis Bentley}, year = {1986}, tags = {little language}, researchr = {https://researchr.org/publication/Bentley86c}, cites = {0}, citedby = {1}, journal = {Communications of the ACM}, volume = {29}, number = {8}, pages = {711-721}, } @inproceedings{LeijenM99, title = {Domain specific embedded compilers}, author = {Daan Leijen and Erik Meijer}, year = {1999}, doi = {10.1145/331960.331977}, url = {http://doi.acm.org/10.1145/331960.331977}, tags = {compiler, DSL}, researchr = {https://researchr.org/publication/LeijenM99}, cites = {0}, citedby = {4}, pages = {109-122}, booktitle = {DSL}, } @article{KlarlundS99, title = {A Domain-Specific Language for Regular Sets of Strings and Trees}, author = {Nils Klarlund and Michael I. Schwartzbach}, year = {1999}, url = {http://computer.org/tse/ts1999/e0378abs.htm}, tags = {domain-specific language}, researchr = {https://researchr.org/publication/KlarlundS99}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {25}, number = {3}, pages = {378-386}, } @inproceedings{VoelterSolomatov2010, title = {Language Modularization and Composition with Projectional Language Workbenches illustrated with {MPS}}, author = {Markus Völter and Konstantin Solomatov}, year = {2010}, doi = {10.1007/978-3-642-35992-7_11}, url = {https://doi.org/10.1007/978-3-642-35992-7_11}, tags = {Domain-specific languages, workbench, modular languages, rule-based, projectional editing, composition, source-to-source, language workbench, language composition, Cobol, parsing, systematic-approach, open-source, grammar, domain-specific language}, researchr = {https://researchr.org/publication/VoelterSolomatov2010}, cites = {0}, citedby = {0}, pages = {383-430}, booktitle = {Software Language Engineering, Third International Conference, SLE 2010}, editor = {Mark G. J. van den Brand and Brian Malloy and Steffen Staab}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, } @article{KallebergV08, title = {Fusing a Transformation Language with an Open Compiler}, author = {Karl Trygve Kalleberg and Eelco Visser}, year = {2008}, doi = {10.1016/j.entcs.2008.03.042}, url = {http://dx.doi.org/10.1016/j.entcs.2008.03.042}, tags = {programming languages, model-to-model transformation, object-oriented programming, rule-based, Java, program analysis, Eclipse, completeness, data-flow language, graph transformation, interpreter, abstract syntax, Stratego/XT, transformation language, term rewriting, functional programming, Eclipse Java Compiler, points-to analysis, domain analysis, analysis, type system, reuse, data-flow programming, data-flow, source-to-source, graph-rewriting, logic programming, transformation system, compiler, model transformation, open compiler, subject-oriented programming, context-aware, logic, Spoofax, rewriting logic, rewriting, data-flow analysis, parsing, feature-oriented programming, open-source, transformation, Stratego, program transformation, domain-specific language}, researchr = {https://researchr.org/publication/KallebergV08}, cites = {0}, citedby = {1}, journal = {Electronic Notes in Theoretical Computer Science}, volume = {203}, number = {2}, pages = {21-36}, } @article{Boyland05, title = {Remote attribute grammars}, author = {John Tang Boyland}, year = {2005}, doi = {10.1145/1082036.1082042}, url = {http://doi.acm.org/10.1145/1082036.1082042}, tags = {attribute grammars, grammar}, researchr = {https://researchr.org/publication/Boyland05}, cites = {0}, citedby = {1}, journal = {Journal of the ACM}, volume = {52}, number = {4}, pages = {627-687}, } @inproceedings{NystromQM06, title = {J&: nested intersection for scalable software composition}, author = {Nathaniel Nystrom and Xin Qi and Andrew C. Myers}, year = {2006}, doi = {10.1145/1167473.1167476}, url = {http://doi.acm.org/10.1145/1167473.1167476}, tags = {composition, C++}, researchr = {https://researchr.org/publication/NystromQM06}, cites = {0}, citedby = {0}, pages = {21-36}, booktitle = {Proceedings of the 21th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2006}, editor = {Peri L. Tarr and William R. Cook}, publisher = {ACM}, isbn = {1-59593-348-4}, } @inproceedings{Halpin00, title = {A Fact-Oriented Approach to Business Rules}, author = {Terry A. Halpin}, year = {2000}, url = {http://link.springer.de/link/service/series/0558/bibs/1920/19200582.htm}, tags = {rule-based, relational database, meta-model, modeling, business rules, data-flow, ORM, rules, model-driven engineering, object-role modeling, information models, database, Meta-Environment, systematic-approach, meta-objects}, researchr = {https://researchr.org/publication/Halpin00}, cites = {0}, citedby = {0}, pages = {582-583}, booktitle = {Conceptual Modeling - ER 2000, 19th International Conference on Conceptual Modeling, Salt Lake City, Utah, USA, October 9-12, 2000, Proceedings}, editor = {Alberto H. F. Laender and Stephen W. Liddle and Veda C. Storey}, volume = {1920}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-41072-4}, } @inproceedings{Grimm06, title = {Better extensibility through modular syntax}, author = {Robert Grimm}, year = {2006}, doi = {10.1145/1133981.1133987}, url = {http://doi.acm.org/10.1145/1133981.1133987}, tags = {extensible syntax}, researchr = {https://researchr.org/publication/Grimm06}, cites = {0}, citedby = {2}, pages = {38-51}, booktitle = {Proceedings of the ACM SIGPLAN 2006 Conference on Programming Language Design and Implementation, Ottawa, Ontario, Canada, June 11-14, 2006}, editor = {Michael I. Schwartzbach and Thomas Ball}, publisher = {ACM}, isbn = {1-59593-320-4}, } @inproceedings{AntoniottiG97, title = {SHIFT and SMART-AHS: A Language for Hybrid System Engineering Modeling and Simulation}, author = {Marco Antoniotti and Aleks Göllü}, year = {1997}, url = {http://www.usenix.org/publications/library/proceedings/dsl97/antoniotti.html}, tags = {meta-model, modeling language, modeling, language engineering, language modeling, model-driven engineering, DSL, Meta-Environment}, researchr = {https://researchr.org/publication/AntoniottiG97}, cites = {0}, citedby = {1}, pages = {171-182}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, publisher = {USENIX}, } @article{Zenger01implementingextensible, title = {Implementing Extensible Compilers}, author = {Matthias Zenger and Martin Odersky}, year = {2001}, url = {http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.28.6913}, tags = {compiler}, researchr = {https://researchr.org/publication/Zenger01implementingextensible}, cites = {0}, citedby = {0}, } @article{Halpin02, title = {Metaschemas for ER, ORM and UML Data Models: A Comparison}, author = {Terry A. Halpin}, year = {2002}, tags = {data models, metaschemas, UML, data-flow, ORM, object-role modeling}, researchr = {https://researchr.org/publication/Halpin02}, cites = {0}, citedby = {0}, journal = {Journal of Database Management}, volume = {13}, number = {2}, pages = {20-30}, } @misc{Adams91modulargrammars, title = {Modular Grammars for Programming Language Prototyping}, author = {Stephen Robert Adams}, year = {1991}, tags = {programming languages, programming, grammar}, researchr = {https://researchr.org/publication/Adams91modulargrammars}, cites = {0}, citedby = {0}, } @inproceedings{JirapanthongZ05, title = {Supporting Product Line Development through Traceability}, author = {Waraporn Jirapanthong and Andrea Zisman}, year = {2005}, doi = {10.1109/APSEC.2005.101}, url = {http://doi.ieeecomputersociety.org/10.1109/APSEC.2005.101}, tags = {product line}, researchr = {https://researchr.org/publication/JirapanthongZ05}, cites = {0}, citedby = {0}, pages = {506-514}, booktitle = {12th Asia-Pacific Software Engineering Conference (APSEC 2005), 15-17 December 2005, Taipei, Taiwan}, publisher = {IEEE Computer Society}, isbn = {0-7695-2465-6}, } @inproceedings{EkmanH04, title = {Rewritable Reference Attributed Grammars}, author = {Torbjörn Ekman and Görel Hedin}, year = {2004}, url = {http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3086&spage=144}, tags = {attribute grammars, reference attribute grammars, graph-rewriting, rewriting, grammar}, researchr = {https://researchr.org/publication/EkmanH04}, cites = {0}, citedby = {3}, pages = {144-169}, booktitle = {ECOOP 2004 - Object-Oriented Programming, 18th European Conference, Oslo, Norway, June 14-18, 2004, Proceedings}, editor = {Martin Odersky}, volume = {3086}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-22159-X}, } @article{MagnussonH07, title = {Circular reference attributed grammars - their evaluation and applications}, author = {Eva Magnusson and Görel Hedin}, year = {2007}, doi = {10.1016/j.scico.2005.06.005}, url = {http://dx.doi.org/10.1016/j.scico.2005.06.005}, tags = {attribute grammars, reference attribute grammars, grammar}, researchr = {https://researchr.org/publication/MagnussonH07}, cites = {0}, citedby = {1}, journal = {Science of Computer Programming}, volume = {68}, number = {1}, pages = {21-37}, } @article{MernikLAZ00:0, title = {Multiple Attribute Grammar Inheritance}, author = {Marjan Mernik and Mitja Lenic and Enis Avdicausevic and Viljem Zumer}, year = {2000}, tags = {attribute grammars, grammar}, researchr = {https://researchr.org/publication/MernikLAZ00%3A0}, cites = {0}, citedby = {0}, journal = {Informatica (Slovenia)}, volume = {24}, number = {3}, } @inproceedings{BravenboerTV06, title = {Declarative, formal, and extensible syntax definition for {AspectJ}}, author = {Martin Bravenboer and Éric Tanter and Eelco Visser}, year = {2006}, doi = {10.1145/1167473.1167491}, url = {http://doi.acm.org/10.1145/1167473.1167491}, tags = {programming languages, AspectJ, object-oriented programming, Java, syntax definition, SDF, lexical syntax, design complexity, composition, design research, language design, aspect oriented programming, compiler, programming, subject-oriented programming, context-aware, language composition, parsing, design, scannerless parsing, extensible language, ASF+SDF, feature-oriented programming, SGLR, grammar}, researchr = {https://researchr.org/publication/BravenboerTV06}, cites = {0}, citedby = {1}, pages = {209-228}, booktitle = {Proceedings of the 21th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2006}, editor = {Peri L. Tarr and William R. Cook}, publisher = {ACM}, isbn = {1-59593-348-4}, } @article{Voelter2011-0, title = {From Programming to Modeling - and Back Again}, author = {Markus Völter}, year = {2011}, note = {to be published later this year}, tags = {programming languages, Java, meta programming, generic programming, meta-model, modeling language, modeling, language modeling, reuse, model-driven development, C++, programming, Meta-Environment, Pascal, domain-specific language}, researchr = {https://researchr.org/publication/Voelter2011-0}, cites = {0}, citedby = {0}, journal = {IEEE Software}, } @article{HeeringHKR89, title = {The syntax definition formalism {SDF} - reference manual}, author = {Jan Heering and P. R. H. Hendriks and Paul Klint and Jan Rekers}, year = {1989}, doi = {10.1145/71605.71607}, url = {http://doi.acm.org/10.1145/71605.71607}, tags = {programming languages, syntax definition, SDF, lexical syntax, abstract syntax, disambiguation, language design, C++, programming, context-aware, incremental, design, ASF+SDF}, researchr = {https://researchr.org/publication/HeeringHKR89}, cites = {0}, citedby = {4}, journal = {SIGPLAN Notices}, volume = {24}, number = {11}, pages = {43-75}, } @inproceedings{LogozzoF08, title = {On the Relative Completeness of Bytecode Analysis Versus Source Code Analysis}, author = {Francesco Logozzo and Manuel Fähndrich}, year = {2008}, doi = {10.1007/978-3-540-78791-4_14}, url = {http://dx.doi.org/10.1007/978-3-540-78791-4_14}, tags = {completeness, points-to analysis, analysis, source-to-source, peer-to-peer, open-source}, researchr = {https://researchr.org/publication/LogozzoF08}, cites = {0}, citedby = {1}, pages = {197-212}, booktitle = {Compiler Construction, 17th International Conference, CC 2008, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2008, Budapest, Hungary, March 29 - April 6, 2008. Proceedings}, editor = {Laurie J. Hendren}, volume = {4959}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-78790-7}, } @inproceedings{MagnussonEH07, title = {Extending Attribute Grammars with Collection Attributes--Evaluation and Applications}, author = {Eva Magnusson and Torbjörn Ekman and Görel Hedin}, year = {2007}, doi = {10.1109/SCAM.2007.13}, url = {http://dx.doi.org/10.1109/SCAM.2007.13}, tags = {attribute grammars, grammar}, researchr = {https://researchr.org/publication/MagnussonEH07}, cites = {0}, citedby = {1}, pages = {69-80}, booktitle = {Seventh IEEE International Workshop on Source Code Analysis and Manipulation (SCAM 2007), September 30 - October 1, 2007, Paris, France}, publisher = {IEEE}, } @article{Cleaveland88, title = {Building Application Generators}, author = {Cleaveland, J. Craig}, year = {1988}, doi = {10.1109/52.17799}, url = {http://dx.doi.org/10.1109/52.17799}, tags = {reuse, code generation}, researchr = {https://researchr.org/publication/Cleaveland88}, cites = {0}, citedby = {1}, journal = {IEEE Softw.}, volume = {5}, number = {4}, } @inproceedings{MedvidovicR97, title = {Domains of Concern in Software Architectures and Architecture Description Languages}, author = {Nenad Medvidovic and David S. Rosenblum}, year = {1997}, url = {http://www.usenix.org/publications/library/proceedings/dsl97/medvidovic.html}, tags = {software architecture, architecture, DSL, domain-specific language}, researchr = {https://researchr.org/publication/MedvidovicR97}, cites = {0}, citedby = {1}, pages = {199-212}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, publisher = {USENIX}, } @proceedings{delete, tags = {composition}, researchr = {https://researchr.org/publication/delete}, cites = {0}, citedby = {0}, publisher = {Springer}, } @inproceedings{EkmanH07, title = {The {JastAdd} extensible {Java} compiler}, author = {Torbjörn Ekman and Görel Hedin}, year = {2007}, doi = {10.1145/1297027.1297029}, url = {http://doi.acm.org/10.1145/1297027.1297029}, tags = {AspectJ, Java, application framework, architecture, analysis, language design, static analysis, type system, extensible compiler, type checking, compiler, JastAdd, design, extensible language}, researchr = {https://researchr.org/publication/EkmanH07}, cites = {0}, citedby = {3}, pages = {1-18}, booktitle = {Proceedings of the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2007, October 21-25, 2007, Montreal, Quebec, Canada}, editor = {Richard P. Gabriel and David F. Bacon and Cristina Videira Lopes and Guy L. Steele Jr.}, publisher = {ACM}, isbn = {978-1-59593-786-5}, } @book{GOF95, title = {Design patterns: elements of reusable object-oriented software}, author = {E. Gamma and R. Helm and Ralph E. Johnson and J. Vlissides}, year = {1995}, tags = {design science, reuse, e-science, Meta-Environment, design, meta-objects}, researchr = {https://researchr.org/publication/GOF95}, cites = {0}, citedby = {1}, publisher = {Addison-Wesley Professional}, } @inproceedings{MeijerBB06, title = {LINQ: reconciling object, relations and XML in the .NET framework}, author = {Erik Meijer and Brian Beckman and Gavin M. Bierman}, year = {2006}, doi = {10.1145/1142473.1142552}, url = {http://doi.acm.org/10.1145/1142473.1142552}, tags = {meta-model, XML, XML Schema, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/MeijerBB06}, cites = {0}, citedby = {3}, pages = {706}, booktitle = {Proceedings of the ACM SIGMOD International Conference on Management of Data, Chicago, Illinois, USA, June 27-29, 2006}, editor = {Surajit Chaudhuri and Vagelis Hristidis and Neoklis Polyzotis}, publisher = {ACM}, isbn = {1-59593-256-9}, } @inproceedings{WykKBJ06, title = {Adding domain-specific and general purpose language features to Java with the Java language extender}, author = {Eric {Van Wyk} and Lijesh Krishnan and Derek Bodin and Eric Johnson}, year = {2006}, doi = {10.1145/1176617.1176696}, url = {http://doi.acm.org/10.1145/1176617.1176696}, tags = {Java, domain-specific language}, researchr = {https://researchr.org/publication/WykKBJ06}, cites = {0}, citedby = {1}, pages = {728-729}, booktitle = {Companion to the 21th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2006, October 22-26, 2006, Portland, Oregon, USA}, editor = {Peri L. Tarr and William R. Cook}, publisher = {ACM}, isbn = {1-59593-491-X}, } @inproceedings{1554241, title = {Towards context sensitive domain specific languages}, author = {Laird, Paul and Barrett, Stephen}, year = {2009}, doi = {10.1145/1554233.1554241}, url = {http://doi.acm.org/10.1145/1554233.1554241}, tags = {programming languages, DSL, context-aware, abstraction, systematic-approach, domain-specific language}, researchr = {https://researchr.org/publication/1554241}, cites = {0}, citedby = {0}, booktitle = {CAMS '09: Proceedings of the 1st International Workshop on Context-Aware Middleware and Services}, address = {New York, NY, USA}, publisher = {ACM}, isbn = {978-1-60558-525-3}, } @inproceedings{Cazzola:2009:SDS:1509307.1509311, title = {Sectional domain specific languages}, author = {Cazzola, Walter and Speziale, Ivan}, year = {2009}, doi = {10.1145/1509307.1509311}, url = {http://doi.acm.org/10.1145/1509307.1509311}, tags = {domain-specific language}, researchr = {https://researchr.org/publication/Cazzola%3A2009%3ASDS%3A1509307.1509311}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the 4th workshop on Domain-specific aspect languages}, series = {DSAL '09}, address = {New York, NY, USA}, publisher = {ACM}, isbn = {978-1-60558-455-3}, } @inproceedings{WykS07, title = {Context-aware scanning for parsing extensible languages}, author = {Eric {Van Wyk} and August Schwerdfeger}, year = {2007}, doi = {10.1145/1289971.1289983}, url = {http://doi.acm.org/10.1145/1289971.1289983}, tags = {context-aware, parsing, extensible language}, researchr = {https://researchr.org/publication/WykS07}, cites = {0}, citedby = {1}, pages = {63-72}, booktitle = {Generative Programming and Component Engineering, 6th International Conference, GPCE 2007}, editor = {Charles Consel and Julia L. Lawall}, address = {Salzburg, Austria}, publisher = {ACM}, isbn = {978-1-59593-855-8}, } @inproceedings{BrachaC90, title = {Mixin-based Inheritance}, author = {Gilad Bracha and William R. Cook}, year = {1990}, tags = {rule-based}, researchr = {https://researchr.org/publication/BrachaC90}, cites = {0}, citedby = {1}, pages = {303-311}, booktitle = {OOPSLA/ECOOP}, } @inproceedings{ErdwegSV13, title = {The State of the Art in Language Workbenches - Conclusions from the Language Workbench Challenge}, author = {Sebastian Erdweg and Tijs van der Storm and Markus Völter and Meinte Boersma and Remi Bosman and William R. Cook and Albert Gerritsen and Angelo Hulshout and Steven Kelly and Alex Loh and Gabriël Konat and Pedro J. Molina and Martin Palatnik and Risto Pohjonen and Eugen Schindler and Klemens Schindler and Riccardo Solmi and Vlad A. Vergu and Eelco Visser and Kevin van der Vlist and Guido Wachsmuth and Jimi van der Woning}, year = {2013}, doi = {10.1007/978-3-319-02654-1_11}, url = {http://dx.doi.org/10.1007/978-3-319-02654-1_11}, researchr = {https://researchr.org/publication/ErdwegSV13}, cites = {0}, citedby = {0}, pages = {197-217}, booktitle = {Software Language Engineering - 6th International Conference, SLE 2013, Indianapolis, IN, USA, October 26-28, 2013. Proceedings}, editor = {Martin Erwig and Richard F. Paige and Eric {Van Wyk}}, volume = {8225}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-319-02653-4}, } @article{CoplienHW98, title = {Commonality and Variability in Software Engineering}, author = {James Coplien and Daniel Hoffman and David M. Weiss}, year = {1998}, url = {http://www.computer.org/software/so1998/s6037abs.htm}, tags = {software engineering}, researchr = {https://researchr.org/publication/CoplienHW98}, cites = {0}, citedby = {2}, journal = {IEEE Software}, volume = {15}, number = {6}, pages = {37-45}, } @inproceedings{ZengerO01, title = {Extensible Algebraic Datatypes with Defaults}, author = {Matthias Zenger and Martin Odersky}, year = {2001}, url = {http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.28.6778}, tags = { algebra}, researchr = {https://researchr.org/publication/ZengerO01}, cites = {0}, citedby = {0}, pages = {241-252}, booktitle = {Proceedings of the Sixth ACM SIGPLAN International Conference on Functional Programming}, series = {ICFP '01}, address = {New York, NY, USA}, publisher = {Association for Computing Machinery}, } @inproceedings{Hofer-GPCE-2010, title = {Modular Domain-Specific Language Components in Scala}, author = {Christian Hofer and Klaus Ostermann}, year = {2010}, tags = {Scala, domain-specific language}, researchr = {https://researchr.org/publication/Hofer-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 }, editor = {Eelco Visser and Jaakko Järvi}, publisher = {ACM}, } @inproceedings{SampleBMW99, title = {CLAM: Composition Language for Autonomous Megamodules}, author = {Neal Sample and Dorothea Beringer and Laurence Melloul and Gio Wiederhold}, year = {1999}, url = {http://link.springer.de/link/service/series/0558/bibs/1594/15940291.htm}, tags = {composition}, researchr = {https://researchr.org/publication/SampleBMW99}, cites = {0}, citedby = {0}, pages = {291-306}, booktitle = {Coordination Languages and Models, Third International Conference, COORDINATION 99, Amsterdam, The Netherlands, April 26-28, 1999, Proceedings}, editor = {Paolo Ciancarini and Alexander L. Wolf}, volume = {1594}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-65836-X}, } @techreport{Joh75.yacc, title = {{YACC}: Yet Another Compiler-Compiler}, author = {S. C. Johnson}, year = {1975}, tags = {YACC, C++, compiler}, researchr = {https://researchr.org/publication/Joh75.yacc}, cites = {0}, citedby = {1}, institution = {AT\&T Bell Laboratories}, number = {CS-32}, address = {Murray Hill, NJ, USA}, } @incollection{CuylerH05, title = {Two Meta-Models for Object-Role Modeling}, author = {Dave Cuyler and Terry A. Halpin}, year = {2005}, tags = {meta-model, modeling, ORM, object-role modeling, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/CuylerH05}, cites = {0}, citedby = {0}, pages = {17-42}, booktitle = {Information Modeling Methods and Methodologies}, editor = {John Krogstie and Terry A. Halpin and Keng Siau}, publisher = {Idea Group}, isbn = {1-59140-376-6}, } @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 = {10.1007/11561347_12}, url = {http://dx.doi.org/10.1007/11561347_12}, tags = {programming languages, AspectJ, object-oriented programming, concrete object syntax, rule-based, Java, syntax definition, meta programming, SDF, meta-model, disambiguation, type system, reuse, programming, subject-oriented programming, Meta-Environment, parsing, scannerless parsing, systematic-approach, ASF+SDF, feature-oriented programming, concrete syntax, meta-objects, domain-specific language}, researchr = {https://researchr.org/publication/BravenboerVVV05}, cites = {0}, citedby = {2}, pages = {157-172}, booktitle = {Generative Programming and Component Engineering, 4th International Conference, GPCE 2005}, editor = {Robert Glück and Michael R. Lowry}, volume = {3676}, series = {Lecture Notes in Computer Science}, address = {Tallinn, Estonia}, publisher = {Springer}, isbn = {3-540-29138-5}, } @inproceedings{Veldhuizen99, title = {C++ Templates as Partial Evaluation}, author = {Todd L. Veldhuizen}, year = {1999}, url = {http://arxiv.org/abs/cs/9810010}, tags = {programming languages, rule-based, generic programming, language design, C++, code generation, compiler, partial evaluation, programming}, researchr = {https://researchr.org/publication/Veldhuizen99}, cites = {0}, citedby = {1}, pages = {13-18}, booktitle = {PEPM}, } @article{AtkinsBBC99, title = {Mawl: A Domain-Specific Language for Form-Based Services}, author = {David L. Atkins and Thomas Ball and Glenn Bruns and Kenneth C. Cox}, year = {1999}, url = {http://computer.org/tse/ts1999/e0334abs.htm}, tags = {rule-based, C++, domain-specific language}, researchr = {https://researchr.org/publication/AtkinsBBC99}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {25}, number = {3}, pages = {334-346}, } @article{WykBGK08, title = {Silver: an Extensible Attribute Grammar System}, author = {Eric {Van Wyk} and Derek Bodin and Jimin Gao and Lijesh Krishnan}, year = {2008}, doi = {10.1016/j.entcs.2008.03.047}, url = {http://dx.doi.org/10.1016/j.entcs.2008.03.047}, tags = {attribute grammars, grammar}, researchr = {https://researchr.org/publication/WykBGK08}, cites = {0}, citedby = {1}, journal = {Electronic Notes in Theoretical Computer Science}, volume = {203}, number = {2}, pages = {103-116}, } @techreport{Seaton2007, title = {A programming language where the syntax and semantics are mutable at runtime.}, author = {C. Seaton}, year = {2007}, month = {June}, tags = {programming languages, semantics, C++, programming}, researchr = {https://researchr.org/publication/Seaton2007}, cites = {0}, citedby = {1}, institution = {University of Bristol}, number = {CSTR-07-005}, } @article{Duca08a, title = {Meta-Environment and Executable Meta-Language using {Smalltalk}: an Experience Report}, author = {Stéphane Ducasse and Tudor Gîrba and Adrian Kuhn and Lukas Renggli}, year = {2009}, month = {feb}, doi = {10.1007/s10270-008-0081-4}, url = {http://scg.unibe.ch/archive/drafts/Duca08a-Sosym-ExecutableMetaLanguage.pdf}, tags = {meta-model, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/Duca08a}, cites = {0}, citedby = {0}, journal = {Journal of Software and Systems Modeling (SOSYM)}, volume = {8}, number = {1}, } @article{KlintLV05, title = {Toward an engineering discipline for grammarware}, author = {Paul Klint and Ralf Lämmel and Chris Verhoef}, year = {2005}, doi = {10.1145/1072997.1073000}, url = {http://doi.acm.org/10.1145/1072997.1073000}, researchr = {https://researchr.org/publication/KlintLV05}, cites = {2}, citedby = {1}, journal = {ACM Transactions on Software Engineering Methodology}, volume = {14}, number = {3}, pages = {331-380}, } @article{FayadS97, title = {Object-Oriented Application Frameworks - Introduction}, author = {Mohamed E. Fayad and Douglas C. Schmidt}, year = {1997}, tags = {application framework, C++, e-science, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/FayadS97}, cites = {0}, citedby = {1}, journal = {Communications of the ACM}, volume = {40}, number = {10}, pages = {32-38}, } @misc{Piumarta07openreusable, title = {Open Reusable Object Models}, author = {Ian Piumarta and Alessandro Warth}, year = {2007}, tags = {programming languages, object-oriented programming, meta-programming system, semantics, operating system, meta programming, meta-model, modeling language, modeling, language modeling, language design, type system, reuse, source-to-source, object-role modeling, subject-oriented programming, abstraction, Meta-Environment, cola, extensible language, feature-oriented programming, open-source, meta-objects}, researchr = {https://researchr.org/publication/Piumarta07openreusable}, cites = {0}, citedby = {0}, } @inproceedings{Reng10a, title = {Embedding Languages Without Breaking Tools}, author = {Lukas Renggli and Tudor Gîrba and Oscar Nierstrasz}, year = {2010}, doi = {10.1007/978-3-642-14107-2_19}, url = {http://scg.unibe.ch/archive/papers/Reng10aEmbeddingLanguages.pdf}, tags = {embedded languages, semantics, case study, helvetia, debugging, compiler, DSL, extensible language, systematic-approach, domain-specific language}, researchr = {https://researchr.org/publication/Reng10a}, cites = {41}, citedby = {1}, booktitle = {Proceedings of the 24th European Conference on Object-Oriented Programming (ECOOP'10)}, volume = {6183}, series = {LNCS}, publisher = {Springer-Verlag}, isbn = {978-3-642-14106-5}, } @article{Wilson04:2, title = {Extensible programming for the 21st century}, author = {Gregory V. Wilson}, year = {2004}, doi = {10.1145/1039511.1039534}, url = {http://doi.acm.org/10.1145/1039511.1039534}, tags = {control systems, programming languages, object-oriented programming, meta programming, generic programming, type system, source-to-source, C++, programming, subject-oriented programming, Meta-Environment, extensible language, feature-oriented programming, open-source, meta-objects}, researchr = {https://researchr.org/publication/Wilson04%3A2}, cites = {0}, citedby = {0}, journal = {ACM Queue}, volume = {2}, number = {9}, pages = {48-57}, } @inproceedings{KrahnRV08, title = {MontiCore: Modular Development of Textual Domain Specific Languages}, author = {Holger Krahn and Bernhard Rumpe and Steven Völkel}, year = {2008}, doi = {10.1007/978-3-540-69824-1_17}, url = {http://dx.doi.org/10.1007/978-3-540-69824-1_17}, tags = {parsing algorithm, rule-based, traversal, language engineering, composition, language design, principles, reuse, DSL, context-aware, Meta-Environment, parsing, design, meta-objects, grammar, domain-specific language}, researchr = {https://researchr.org/publication/KrahnRV08}, cites = {35}, citedby = {3}, pages = {297-315}, booktitle = {Objects, Components, Models and Patterns, 46th International Conference, TOOLS EUROPE 2008}, editor = {Richard F. Paige and Bertrand Meyer}, volume = {11}, series = {Lecture Notes in Business Information Processing}, publisher = {Springer}, isbn = {978-3-540-69823-4}, } @article{PorterCW05, title = {Sequences as a basis for pattern language composition}, author = {Ronald Porter and James Coplien and Tiffany Winn}, year = {2005}, doi = {10.1016/j.scico.2004.11.014}, url = {http://dx.doi.org/10.1016/j.scico.2004.11.014}, tags = {pattern language, composition}, researchr = {https://researchr.org/publication/PorterCW05}, cites = {0}, citedby = {0}, journal = {Science of Computer Programming}, volume = {56}, number = {1-2}, pages = {231-249}, } @article{Steele99, title = {Growing a Language}, author = {Guy L. Steele Jr.}, year = {1999}, researchr = {https://researchr.org/publication/Steele99}, cites = {0}, citedby = {2}, journal = {Higher-Order and Symbolic Computation}, volume = {12}, number = {3}, pages = {221-236}, } @book{Shalit1996, title = {The Dylan reference manual: the definitive guide to the new object-oriented dynamic language}, author = {A. Shalit}, year = {1996}, researchr = {https://researchr.org/publication/Shalit1996}, cites = {0}, citedby = {1}, publisher = {Addison Wesley Longman Publishing Co., Inc.}, } @inproceedings{Spiewak:2009, title = {ScalaQL: Language-Integrated Database Queries for Scala}, author = {Daniel Spiewak and Tian Zhao}, year = {2009}, tags = {programming languages, program comprehension, Scala, application framework, relational database, language design, programming, database, design, query language}, researchr = {https://researchr.org/publication/Spiewak%3A2009}, cites = {0}, citedby = {0}, booktitle = {Second International Conference, SLE 2009, Denver, CO, USA, October 5-6, 2009, Revised Selected Papers}, editor = {Mark G. J. van den Brand and Dragan Gasevic and Jeffrey G. Gray}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, } @incollection{Voelter2011, title = {Language and IDE Development, Modularization and Composition with MPS}, author = {Markus Völter}, year = {2011}, tags = {composition}, researchr = {https://researchr.org/publication/Voelter2011}, cites = {0}, citedby = {0}, booktitle = {Generative and Transformational Techniques in Software Engineering II, International Summer School, GTTSE 2011}, series = {LNCS}, publisher = {Springer}, } @article{KutterP97, title = {Montages Specifications of Realistic Programming Languages}, author = {Philipp W. Kutter and Alfonso Pierantonio}, year = {1997}, url = {http://www.jucs.org/jucs_3_5/montages_specifications}, tags = {programming languages, programming}, researchr = {https://researchr.org/publication/KutterP97}, cites = {0}, citedby = {0}, journal = {J. UCS}, volume = {3}, number = {5}, pages = {416-442}, } @inproceedings{Voelter10, title = {Embedded Software Development with Projectional Language Workbenches}, author = {Markus Völter}, year = {2010}, doi = {10.1007/978-3-642-16129-2_4}, url = {http://dx.doi.org/10.1007/978-3-642-16129-2_4}, tags = {workbench, embedded software, language workbench}, researchr = {https://researchr.org/publication/Voelter10}, cites = {0}, citedby = {0}, pages = {32-46}, booktitle = {Model Driven Engineering Languages and Systems - 13th International Conference, MODELS 2010, Oslo, Norway, October 3-8, 2010, Proceedings, Part II}, editor = {Dorina C. Petriu and Nicolas Rouquette and Øystein Haugen}, volume = {6395}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-16128-5}, } @book{DHP:1996, title = {Language Prototyping. An Algebraic Specification Approach}, year = {1996}, month = {September}, tags = {algebraic specification, algebra, systematic-approach}, researchr = {https://researchr.org/publication/DHP%3A1996}, cites = {0}, citedby = {2}, editor = {Arie van Deursen and Jan Heering and Paul Klint}, volume = {5}, series = {AMAST Series in Computing}, address = {Singapore}, publisher = {World Scientific}, } @phdthesis{Visser97, title = {Syntax Definition for Language Prototyping}, author = {Eelco Visser}, year = {1997}, month = {September}, tags = {syntax definition, SDF, syntax definition formalism, disambiguation, testing, language design, graph-rewriting, algebraic specification, algebra, context-aware, rewriting, parsing, design, scannerless parsing, ASF+SDF, SGLR}, researchr = {https://researchr.org/publication/Visser97}, cites = {0}, citedby = {6}, school = {University of Amsterdam}, advisor = {Paul Klint}, } @book{HopcroftMU2006, title = {Introduction to Automata Theory, Languages, and Computation}, author = {J. E. Hopcroft and R. Motwani and J. D. Ullman}, year = {2006}, tags = {automata theory, e-science}, researchr = {https://researchr.org/publication/HopcroftMU2006}, cites = {0}, citedby = {2}, edition = {3rd ed. }, address = {Boston, MA, USA}, publisher = {Addison-Wesley}, } @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 = {10.1109/ICWE.2008.15}, url = {http://dx.doi.org/10.1109/ICWE.2008.15}, tags = {WebDSL, semantics, rule-based, separation of concerns, transformation language, action semantics, language design, weaving, rules, web applications, DSL, abstraction, access control policies, access control, aspect weaving, design, role-based access control, systematic-approach, transformation, domain-specific language}, researchr = {https://researchr.org/publication/GroenewegenV08}, cites = {26}, citedby = {7}, pages = {175-188}, booktitle = {Proceedings of the Eighth International Conference on Web Engineering, ICWE 2008, 14-18 July 2008, Yorktown Heights, New York, USA}, editor = {Daniel Schwabe and Francisco Curbera and Paul Dantzig}, publisher = {IEEE}, isbn = {978-0-7695-3261-5}, } @inproceedings{VermolenV08, title = {Heterogeneous Coupled Evolution of Software Languages}, author = {Sander Vermolen and Eelco Visser}, year = {2008}, doi = {10.1007/978-3-540-87875-9_44}, url = {http://dx.doi.org/10.1007/978-3-540-87875-9_44}, tags = {model-to-model transformation, software architecture, coupled, data-flow language, meta-model, XML, evolution, modeling language, heterogeneous, XML Schema, languages, modeling, transformation language, coupled evolution, architecture, language modeling, model, data-flow, software evolution, format evolution, source-to-source, model transformation, database, abstraction, software languages, Meta-Environment, systematic-approach, meta-objects, transformation, grammar, domain-specific language}, researchr = {https://researchr.org/publication/VermolenV08}, cites = {0}, citedby = {3}, pages = {630-644}, booktitle = {Model Driven Engineering Languages and Systems, 11th International Conference, MoDELS 2008, Toulouse, France, September 28 - October 3, 2008. Proceedings}, editor = {Krzysztof Czarnecki and Ileana Ober and Jean-Michel Bruel and Axel Uhl and Markus Völter}, volume = {5301}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-87874-2}, } @techreport{salomon-disambiguation, title = {The disambiguation and scannerless parsing of complete character-level grammars for programming languages}, author = {Salomon, D.J. and Cormack, G.V.}, year = {1995}, tags = {programming languages, completeness, disambiguation, programming, parsing, scannerless parsing, grammar}, researchr = {https://researchr.org/publication/salomon-disambiguation}, cites = {0}, citedby = {1}, institution = {Department of Computer Science, University of Manitoba}, number = {95/06}, address = {Winnipeg, Canada}, } @inproceedings{PetersonH99, title = {Monadic robotics}, author = {John Peterson and Gregory D. Hager}, year = {1999}, doi = {10.1145/331960.331976}, url = {http://doi.acm.org/10.1145/331960.331976}, tags = {DSL}, researchr = {https://researchr.org/publication/PetersonH99}, cites = {0}, citedby = {1}, pages = {95-108}, booktitle = {DSL}, } @inproceedings{ChristensenMS03, title = {Precise Analysis of String Expressions}, author = {Aske Simon Christensen and Anders Møller and Michael I. Schwartzbach}, year = {2003}, url = {http://link.springer.de/link/service/series/0558/bibs/2694/26940001.htm}, tags = {analysis}, researchr = {https://researchr.org/publication/ChristensenMS03}, cites = {0}, citedby = {1}, pages = {1-18}, booktitle = {Static Analysis, 10th International Symposium, SAS 2003, San Diego, CA, USA, June 11-13, 2003, Proceedings}, editor = {Radhia Cousot}, volume = {2694}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-40325-6}, } @book{LindholmY97, title = {The Java Virtual Machine Specification}, author = {Tim Lindholm and Frank Yellin}, year = {1997}, tags = {Java, JVM}, researchr = {https://researchr.org/publication/LindholmY97}, cites = {0}, citedby = {2}, publisher = {Addison-Wesley}, isbn = {0-201-63452-X}, } @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}, url = {https://content.iospress.com/articles/fundamenta-informaticae/fi69-1-2-06}, tags = {programming languages, semantics, rule-based, formal semantics, graph transformation, dynamic rewrite rules, Stratego/XT, transformation language, term rewriting, language design, graph-rewriting, rules, operational semantics, context-aware, access control, rewriting, design, role-based access control, rewriting strategies, transformation, Stratego, program transformation}, researchr = {https://researchr.org/publication/BravenboerDOV06}, cites = {0}, citedby = {4}, journal = {Fundamenta Informaticae}, volume = {69}, number = {1-2}, pages = {123-178}, } @inproceedings{KarakoidasS09, title = {J\% : Integrating Domain-Specific Languages with Java}, author = {Vassilios Karakoidas and Diomidis Spinellis}, year = {2009}, doi = {10.1109/PCI.2009.26}, url = {http://doi.ieeecomputersociety.org/10.1109/PCI.2009.26}, tags = {programming languages, Java, language extension, architecture, type checking, compiler, DSL, domain-specific language}, researchr = {https://researchr.org/publication/KarakoidasS09}, cites = {22}, citedby = {0}, pages = {109-113}, booktitle = {PCI 2009, 13th Panhellenic Conference on Informatics, 10-12 September 2009, Corfu, Greece}, editor = {Stefanos Gritzalis and Dimitris Plexousakis and Dionisios N. Pnevmatikatos}, publisher = {IEEE Computer Society}, isbn = {978-0-7695-3788-7}, } @inproceedings{KaminH97, title = {A Special-Purpose Language for Picture-Drawing}, author = {Samuel N. Kamin and David Hyatt}, year = {1997}, url = {http://www.usenix.org/publications/library/proceedings/dsl97/kamin.html}, tags = {DSL}, researchr = {https://researchr.org/publication/KaminH97}, cites = {0}, citedby = {2}, pages = {297-312}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, publisher = {USENIX}, } @inproceedings{TschantzK06, title = {Towards reasonability properties for access-control policy languages}, author = {Michael Carl Tschantz and Shriram Krishnamurthi}, year = {2006}, doi = {10.1145/1133058.1133081}, url = {http://doi.acm.org/10.1145/1133058.1133081}, tags = {access control policies, access control}, researchr = {https://researchr.org/publication/TschantzK06}, cites = {0}, citedby = {1}, pages = {160-169}, booktitle = {SACMAT 2006,11th ACM Symposium on Access Control Models and Technologies, Lake Tahoe, California, USA, June 7-9, 2006, Proceedings}, editor = {David F. Ferraiolo and Indrakshi Ray}, publisher = {ACM}, isbn = {1-59593-353-0}, } @inproceedings{BravenboerV08, title = {Parse Table Composition}, author = {Martin Bravenboer and Eelco Visser}, year = {2009}, doi = {10.1007/978-3-642-00434-6_6}, url = {http://dx.doi.org/10.1007/978-3-642-00434-6_6}, tags = {parsing algorithm, programming languages, deployment, syntax definition, SDF, composition, source-to-source, parse table composition, compiler, programming, language composition, parsing, extensible language, ASF+SDF, open-source, grammar, domain-specific language}, researchr = {https://researchr.org/publication/BravenboerV08}, cites = {0}, citedby = {0}, pages = {74-94}, booktitle = {Software Language Engineering, First International Conference, SLE 2008, Toulouse, France, September 29-30, 2008. Revised Selected Papers}, editor = {Dragan Gasevic and Ralf Lämmel and Eric {Van Wyk}}, volume = {5452}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-00433-9}, } @article{Steimann00:1, title = {On the representation of roles in object-oriented and conceptual modelling}, author = {Friedrich Steimann}, year = {2000}, doi = {10.1016/S0169-023X(00)00023-9}, url = {http://dx.doi.org/10.1016/S0169-023X(00)00023-9}, tags = {conceptual modeling, classification, meta-model, modeling language, modeling, language modeling, ORM, object-role modeling, object-oriented modeling, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/Steimann00%3A1}, cites = {0}, citedby = {0}, journal = {Data \& Knowledge Engineering}, volume = {35}, number = {1}, pages = {83-106}, } @techreport{Sprinkle:TSE:2009, title = {Fundamental Limitations in Domain-Specific Language Evolution}, author = {Jonathan Sprinkle and Jeffrey G. Gray and Marjan Mernik}, year = {2009}, month = {August}, url = {http://www.ece.arizona.edu/~sprinkjm/wiki/uploads/Publications/sprinkle-tse2009-domainevolution-submitted.pdf}, tags = {programming languages, model-to-model transformation, semantics, transformation engineering, meta programming, meta-model, modeling language, modeling, language engineering, transformation language, language modeling, source-to-source, maintenance, model-driven engineering, transformation system, model transformation, Meta-Environment, higher-order transformations, transformation, program transformation, domain-specific language}, researchr = {https://researchr.org/publication/Sprinkle%3ATSE%3A2009}, cites = {0}, citedby = {0}, institution = {University of Arizona}, number = {TR-090831}, address = {1230 E. Speedway Blvd., Bldg. 104}, } @inproceedings{NierstraszM94, title = {Requirements for a Composition Language}, author = {Oscar Nierstrasz and Theo Dirk Meijler}, year = {1994}, tags = {programming languages, object-oriented programming, meta programming, software architecture, software components, architecture, composition, software component, language design, software evolution, source-to-source, programming, subject-oriented programming, abstraction, Meta-Environment, design, systematic-approach, feature-oriented programming, open-source, meta-objects}, researchr = {https://researchr.org/publication/NierstraszM94}, cites = {42}, citedby = {0}, pages = {147-161}, booktitle = {Object-Based Models and Languages for Concurrent Systems, ECOOP 94 Workshop on Models and Languages for Coordination of Parallelism and Distribution, Bologna, Italy, July 5, 1994, Selected Papers}, editor = {Paolo Ciancarini and Oscar Nierstrasz and Akinori Yonezawa}, volume = {924}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-59450-7}, } @inproceedings{Deursen97, title = {Domain-Specific Languages versus Object-Oriented Frameworks: A Financial Engineering Case Study}, author = {Arie van Deursen}, year = {1997}, tags = {application framework, case study, language engineering, little language, Meta-Environment, meta-objects, domain-specific language}, researchr = {https://researchr.org/publication/Deursen97}, cites = {0}, citedby = {1}, booktitle = {Proceedings Smalltalk and Java in Industry and Academia, STJA'97}, organization = {Ilmenau Technical University}, } @inproceedings{MenonP99, title = {A case for source-level transformations in MATLAB}, author = {Vijay Menon and Keshav Pingali}, year = {1999}, doi = {10.1145/331960.331972}, url = {http://doi.acm.org/10.1145/331960.331972}, tags = {model-to-model transformation, meta programming, meta-model, source-to-source, C++, compiler, model transformation, DSL, Meta-Environment, open-source, transformation, program transformation}, researchr = {https://researchr.org/publication/MenonP99}, cites = {0}, citedby = {1}, pages = {53-65}, booktitle = {DSL}, } @inproceedings{Voelter2010, title = {Implementing Feature Variability for Models and Code with Projectional Language Workbenches }, author = {Markus Völter}, year = {2010}, tags = {Domain-specific languages, programming languages, feature modeling, workbench, object-oriented programming, rule-based, meta programming, meta-model, modeling language, modeling, language engineering, language modeling, composition, product line engineering, model-driven development, model-driven engineering, object-role modeling, information models, DSL, programming, language workbench, Meta-Environment, language composition, product line, systematic-approach, feature-oriented programming, domain-specific language}, researchr = {https://researchr.org/publication/Voelter2010}, cites = {0}, citedby = {0}, } @inproceedings{StichnothG97, title = {Code Composition as an Implementation Language for Compilers}, author = {James M. Stichnoth and Thomas R. Gross}, year = {1997}, url = {http://www.usenix.org/publications/library/proceedings/dsl97/stichnoth.html}, tags = {composition, compiler, DSL}, researchr = {https://researchr.org/publication/StichnothG97}, cites = {0}, citedby = {1}, pages = {119-132}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, publisher = {USENIX}, } @inproceedings{WeckRS06, title = {Component-Oriented Programming}, author = {Wolfgang Weck and Ralf Reussner and Clemens A. Szyperski}, year = {2006}, doi = {10.1007/978-3-540-71774-4_12}, url = {http://dx.doi.org/10.1007/978-3-540-71774-4_12}, tags = {object-oriented programming, programming, subject-oriented programming, feature-oriented programming}, researchr = {https://researchr.org/publication/WeckRS06}, cites = {0}, citedby = {0}, pages = {106-116}, booktitle = {Object-Oriented Technology, ECOOP 2006 Workshop Reader, ECOOP 2006 Workshops, Nantes, France, July 3-7, 2006, Final Reports}, editor = {Mario Südholt and Charles Consel}, volume = {4379}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-71772-0}, } @inproceedings{Visser05-SCAM, title = {Transformations for Abstractions}, author = {Eelco Visser}, year = {2005}, month = {October}, doi = {10.1109/SCAM.2005.26}, url = {http://dx.doi.org/10.1109/SCAM.2005.26}, tags = {programming languages, meta programming, case study, Stratego/XT, transformation language, extensible languages, programming, abstraction, Meta-Environment, extensible language, interpreters, transformation, Stratego, program transformation}, researchr = {https://researchr.org/publication/Visser05-SCAM}, cites = {0}, citedby = {1}, booktitle = {5th IEEE International Workshop on Source Code Analysis and Manipulation (SCAM 2005), 30 September - 1 October 2005, Budapest, Hungary}, publisher = {IEEE Computer Society}, isbn = {0-7695-2292-0}, } @article{GybelsWDD06, title = {Inter-language reflection: A conceptual model and its implementation}, author = {Kris Gybels and Roel Wuyts and Stéphane Ducasse and Maja D'Hondt}, year = {2006}, doi = {10.1016/j.cl.2005.10.003}, url = {http://dx.doi.org/10.1016/j.cl.2005.10.003}, tags = {programming languages, Prolog, Java, meta programming, meta-model, modeling language, computational reflection, language modeling, programming paradigms, programming, Meta-Environment, reflection, meta-objects}, researchr = {https://researchr.org/publication/GybelsWDD06}, cites = {0}, citedby = {1}, journal = {Computer Languages, Systems \& Structures}, volume = {32}, number = {2-3}, pages = {109-124}, } @article{Henriksson-08, title = {Extending grammars and metamodels for reuse: the Reuseware approach}, author = {Jakob Henriksson and Florian Heidenreich and Jendrik Johannes and Steffen Zschaler and Uwe Aßmann}, year = {2008}, doi = {10.1049/iet-sen:20070060}, url = {http://link.aip.org/link/?SEN/2/165/1}, tags = {reuse, systematic-approach, grammar}, researchr = {https://researchr.org/publication/Henriksson-08}, cites = {0}, citedby = {0}, journal = {IET Software}, volume = {2}, number = {3}, } @book{Parr:2010, title = {Language Implementation Patterns: Create Your Own Domain-Specific and General Programming Languages}, author = {Terence John Parr}, year = {2010}, url = {http://pragprog.com/titles/tpdsl/language-implementation-patterns}, tags = {programming languages, design science, meta programming, data-flow language, pattern language, meta-model, interpreter, modeling language, language modeling, language design, data-flow programming, data-flow, source-to-source, e-science, ANTLR, DSL, programming, software languages, Meta-Environment, compilers, design, interpreters, open-source, domain-specific language}, researchr = {https://researchr.org/publication/Parr%3A2010}, cites = {0}, citedby = {0}, publisher = {The Pragmatic Bookshelf}, } @inproceedings{Hudak98, title = {Modular Domain Specific Languages and Tools}, author = {Paul Hudak}, year = {1998}, month = {jun}, doi = {10.1109/ICSR.1998.685738}, tags = {programming languages, semantics, interpreter, embedded software, language design, Haskell, reuse, DSL, programming, domain-specific language}, researchr = {https://researchr.org/publication/Hudak98}, cites = {0}, citedby = {1}, booktitle = {Proceedings of the 5th International Conference on Software Reuse, ICSR '98}, address = {Washington, DC, USA}, publisher = {IEEE Computer Society}, isbn = {0-8186-8377-5}, } @inproceedings{KuiperS98, title = {Lrc - A Generator for Incremental Language-Oriented Tools}, author = {Matthijs F. Kuiper and João Saraiva}, year = {1998}, tags = {incremental}, researchr = {https://researchr.org/publication/KuiperS98}, cites = {0}, citedby = {1}, pages = {298-301}, booktitle = {Compiler Construction, 7th International Conference, CC 98, Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 98, Lisbon, Portugal, March 28 - April 4, 1998, Proceedings}, editor = {Kai Koskimies}, volume = {1383}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-64304-4}, } @inproceedings{Cleenewerck03, title = {Component-Based DSL Development}, author = {Thomas Cleenewerck}, year = {2003}, url = {http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=2830&spage=245}, tags = {rule-based, DSL}, researchr = {https://researchr.org/publication/Cleenewerck03}, cites = {0}, citedby = {1}, pages = {245-264}, booktitle = {Generative Programming and Component Engineering, Second International Conference, GPCE 2003, Erfurt, Germany, September 22-25, 2003, Proceedings}, editor = {Frank Pfenning and Yannis Smaragdakis}, volume = {2830}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-20102-5}, } @inproceedings{CoxBCKK08, title = {Xoc, an extension-oriented compiler for systems programming}, author = {Russ Cox and Tom Bergan and Austin T. Clements and M. Frans Kaashoek and Eddie Kohler}, year = {2008}, doi = {10.1145/1346281.1346312}, url = {http://doi.acm.org/10.1145/1346281.1346312}, tags = {object-oriented programming, compiler, programming, subject-oriented programming, feature-oriented programming}, researchr = {https://researchr.org/publication/CoxBCKK08}, cites = {0}, citedby = {1}, pages = {244-254}, booktitle = {Proceedings of the 13th International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2008, Seattle, WA, USA, March 1-5, 2008}, editor = {Susan J. Eggers and James R. Larus}, publisher = {ACM}, isbn = {978-1-59593-958-6}, } @inproceedings{ArnoldusBB07, title = {Repleo: a syntax-safe template engine}, author = {Jeroen Arnoldus and Jeanot Bijpost and Mark G. J. van den Brand}, year = {2007}, doi = {10.1145/1289971.1289977}, url = {http://doi.acm.org/10.1145/1289971.1289977}, tags = {Java, template engine, Meta-Environment, parsing, systematic-approach, meta-objects, grammar}, researchr = {https://researchr.org/publication/ArnoldusBB07}, cites = {0}, citedby = {1}, pages = {25-32}, booktitle = {Generative Programming and Component Engineering, 6th International Conference, GPCE 2007}, editor = {Charles Consel and Julia L. Lawall}, address = {Salzburg, Austria}, publisher = {ACM}, isbn = {978-1-59593-855-8}, } @inproceedings{FreemanP06, title = {Evolving an embedded domain-specific language in Java}, author = {Steve Freeman and Nat Pryce}, year = {2006}, doi = {10.1145/1176617.1176735}, url = {http://doi.acm.org/10.1145/1176617.1176735}, tags = {Java, domain-specific language}, researchr = {https://researchr.org/publication/FreemanP06}, cites = {0}, citedby = {1}, pages = {855-865}, booktitle = {Companion to the 21th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2006, October 22-26, 2006, Portland, Oregon, USA}, editor = {Peri L. Tarr and William R. Cook}, publisher = {ACM}, isbn = {1-59593-491-X}, } @inproceedings{OderskyZ2005, title = {Independently extensible solutions to the expression problem}, author = {Martin Odersky and M. Zenger}, year = {2005}, researchr = {https://researchr.org/publication/OderskyZ2005}, cites = {0}, citedby = {1}, booktitle = {Proceedings of the Twelth International Workshop on Foundations of Object-Oriented Languages (FOOL 12)}, } @inproceedings{Reng09c, title = {Language Boxes: Bending the Host Language with Modular Language Changes}, author = {Lukas Renggli and Marcus Denker and Oscar Nierstrasz}, year = {2009}, note = {To Appear}, tags = {model-to-model transformation, rule-based, meta-model, modeling language, modeling, transformation language, language modeling, composition, language design, model-driven development, source-to-source, rules, model transformation, DSL, Meta-Environment, design, process modeling, transformation, grammar, domain-specific language}, researchr = {https://researchr.org/publication/Reng09c}, cites = {27}, citedby = {2}, booktitle = {Software Language Engineering: Second International Conference, SLE 2009, Denver, Colorado, October 5-6, 2009}, series = {LNCS}, publisher = {Springer}, } @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 = {10.1016/j.scico.2007.11.003}, url = {http://dx.doi.org/10.1016/j.scico.2007.11.003}, tags = {control systems, programming languages, object-oriented programming, concrete object syntax, reusable components, rule-based, completeness, meta programming, pattern language, graph transformation, Stratego/XT, transformation language, reuse, graph-rewriting, rules, transformation system, DSL, programming, subject-oriented programming, context-aware, abstraction, Meta-Environment, rewriting, rewriting strategies, feature-oriented programming, concrete syntax, meta-objects, transformation, Stratego, program transformation}, researchr = {https://researchr.org/publication/BravenboerKVV08}, cites = {0}, citedby = {7}, journal = {Science of Computer Programming}, volume = {72}, number = {1-2}, pages = {52-70}, } @inproceedings{FaithNP97, title = {KHEPERA: A System for Rapid Implementation of Domain Specific Languages}, author = {Rickard E. Faith and Lars S. Nyland and Jan Prins}, year = {1997}, url = {http://www.usenix.org/publications/library/proceedings/dsl97/faith.html}, tags = {language transformation, transformation language, transformation system, e-science, DSL, transformation, domain-specific language}, researchr = {https://researchr.org/publication/FaithNP97}, cites = {0}, citedby = {2}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, publisher = {USENIX}, } @article{Barstow85-1, title = {Domain-Specific Automatic Programming}, author = {David R. Barstow}, year = {1985}, tags = {programming}, researchr = {https://researchr.org/publication/Barstow85-1}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {11}, number = {11}, pages = {1321-1336}, } @misc{Fowler2005-MPS, title = {A language workbench in action - MPS}, author = {Martin Fowler}, year = {2005}, tags = {workbench, language workbench}, researchr = {https://researchr.org/publication/Fowler2005-MPS}, cites = {0}, citedby = {0}, howpublished = {http: //martinfowler.com/articles/mpsAgree.html}, } @inproceedings{Birngruber01, title = {A Software Composition Language and Its Implementation}, author = {Dietrich Birngruber}, year = {2001}, url = {http://link.springer.de/link/service/series/0558/bibs/2244/22440519.htm}, tags = {composition}, researchr = {https://researchr.org/publication/Birngruber01}, cites = {0}, citedby = {0}, pages = {519-529}, booktitle = {Perspectives of System Informatics, 4th International Andrei Ershov Memorial Conference, PSI 2001, Akademgorodok, Novosibirsk, Russia, July 2-6, 2001, Revised Papers}, editor = {Dines Bjørner and Manfred Broy and Alexandre V. Zamulin}, volume = {2244}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-43075-X}, } @article{Knuth68, title = {Semantics of Context-Free Languages}, author = {Donald E. Knuth}, year = {1968}, url = {http://www.springerlink.com/content/m2501m07m4666813/}, tags = {programming languages, semantics, rule-based, attribute grammars, formal semantics, context free languages, rules, e-science, programming, context-aware, grammar}, researchr = {https://researchr.org/publication/Knuth68}, cites = {0}, citedby = {1}, journal = {Theory Comput. Syst.}, volume = {2}, number = {2}, pages = {127-145}, } @inproceedings{Priss99:0, title = {Description Logic and Faceted Knowledge Representation}, author = {Uta Priss}, year = {1999}, url = {http://SunSITE.Informatik.RWTH-Aachen.DE/Publications/CEUR-WS/Vol-22/priss.ps}, tags = {rule-based, knowlege representation, translation, faceted knowledge representation, facets, information retrieval, design complexity, design research, domain analysis, analysis, data-flow, database, context-aware, logic, abstraction, data-flow analysis, design, systematic-approach, description logic}, researchr = {https://researchr.org/publication/Priss99%3A0}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the 1999 International Workshop on Description Logics (DL 99), Linköping, Sweden, July 30 - August 1, 1999}, editor = {Patrick Lambrix and Alexander Borgida and Maurizio Lenzerini and Ralf Möller and Peter F. Patel-Schneider}, volume = {22}, series = {CEUR Workshop Proceedings}, publisher = {CEUR-WS.org}, } @inproceedings{SuW-POPL-2006, title = {The essence of command injection attacks in web applications}, author = {Zhendong Su and Gary Wassermann}, year = {2006}, doi = {10.1145/1111037.1111070}, url = {http://doi.acm.org/10.1145/1111037.1111070}, tags = {injection attack, web applications}, researchr = {https://researchr.org/publication/SuW-POPL-2006}, cites = {0}, citedby = {1}, pages = {372-382}, booktitle = {Proceedings of the 33rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL 2006, Charleston, South Carolina, USA, January 11-13, 2006}, editor = {J. Gregory Morrisett and Simon L. Peyton Jones}, publisher = {ACM}, isbn = {1-59593-027-2}, } @article{TeitelbaumR81, title = {The Cornell Program Synthesizer: A Syntax-Directed Programming Environment}, author = {Tim Teitelbaum and Thomas W. Reps}, year = {1981}, tags = {meta programming, meta-model, programming, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/TeitelbaumR81}, cites = {0}, citedby = {2}, journal = {Communications of the ACM}, volume = {24}, number = {9}, pages = {563-573}, } @inproceedings{Taha03, title = {A Gentle Introduction to Multi-stage Programming}, author = {Walid Taha}, year = {2003}, url = {http://springerlink.metapress.com/openurl.asp?genre=article&issn=0302-9743&volume=3016&spage=30}, tags = {programming}, researchr = {https://researchr.org/publication/Taha03}, cites = {0}, citedby = {1}, pages = {30-50}, booktitle = {Domain-Specific Program Generation, International Seminar, Dagstuhl Castle, Germany, March 23-28, 2003, Revised Papers}, editor = {Christian Lengauer and Don S. Batory and Charles Consel and Martin Odersky}, volume = {3016}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-22119-0}, } @inproceedings{Nierstrasz99, title = {Piccola - A Small Composition Language}, author = {Oscar Nierstrasz}, year = {1999}, tags = {composition}, researchr = {https://researchr.org/publication/Nierstrasz99}, cites = {0}, citedby = {0}, pages = {317}, booktitle = {Object-Oriented Technology, ECOOP 99 Workshop Reader, ECOOP 99 Workshops, Panels, and Posters, Lisbon, Portugal, June 14-18, 1999, Proceedings}, editor = {Ana M. D. Moreira and Serge Demeyer}, volume = {1743}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-66954-X}, } @inproceedings{Reng10c, title = {Practical Dynamic Grammars for Dynamic Languages}, author = {Lukas Renggli and Stéphane Ducasse and Tudor Gîrba and Oscar Nierstrasz}, year = {2010}, month = {jun}, url = {http://scg.unibe.ch/archive/papers/Reng10cDynamicGrammars.pdf}, tags = {programming languages, object-oriented programming, meta programming, meta-model, modeling language, language modeling, helvetia, reuse, object-role modeling, programming, subject-oriented programming, Meta-Environment, parsing, scannerless parsing, feature-oriented programming, meta-objects, grammar}, researchr = {https://researchr.org/publication/Reng10c}, cites = {18}, citedby = {0}, booktitle = {4th Workshop on Dynamic Languages and Applications (DYLA 2010)}, address = {Malaga, Spain}, } @article{Ousterhout98, title = {Scripting: Higher-Level Programming for the 21st Century}, author = {John K. Ousterhout}, year = {1998}, tags = {programming}, researchr = {https://researchr.org/publication/Ousterhout98}, cites = {0}, citedby = {1}, journal = {IEEE Computer}, volume = {31}, number = {3}, pages = {23-30}, } @article{MernikZLA99, title = {Implementation of Multiple Attribute Grammar Inheritance in the Tool LISA}, author = {Marjan Mernik and Viljem Zumer and Mitja Lenic and Enis Avdicausevic}, year = {1999}, tags = {attribute grammars, grammar}, researchr = {https://researchr.org/publication/MernikZLA99}, cites = {0}, citedby = {0}, journal = {SIGPLAN Notices}, volume = {34}, number = {6}, pages = {68-75}, } @techreport{tratt04compiletm, title = {Compile-time meta-programming in Converge}, author = {Laurence Tratt}, year = {2002}, month = {December}, tags = {converge, programming languages, object-oriented programming, meta programming, meta-model, functional programming, Haskell, model-driven development, programming paradigms, compiler, programming, subject-oriented programming, Meta-Environment, extensible language, feature-oriented programming, meta-objects}, researchr = {https://researchr.org/publication/tratt04compiletm}, cites = {0}, citedby = {0}, institution = {Department of Computer Science, King's College London}, number = {TR-04-11}, } @article{365879, title = {Syntax macros and extended translation}, author = {Leavenworth, B. M.}, year = {1966}, doi = {10.1145/365876.365879}, url = {http://doi.acm.org/10.1145/365876.365879}, tags = {translation, macros}, researchr = {https://researchr.org/publication/365879}, cites = {0}, citedby = {1}, journal = {Commun. ACM}, volume = {9}, number = {11}, } @article{DanaherLL06, title = {Programming with exceptions in JCilk}, author = {John S. Danaher and I.-Ting Angelina Lee and Charles E. Leiserson}, year = {2006}, doi = {10.1016/j.scico.2006.05.008}, url = {http://dx.doi.org/10.1016/j.scico.2006.05.008}, tags = {exceptions, e-science, programming}, researchr = {https://researchr.org/publication/DanaherLL06}, cites = {0}, citedby = {1}, journal = {Science of Computer Programming}, volume = {63}, number = {2}, pages = {147-171}, } @inproceedings{JouaultBK06, title = {TCS: a DSL for the specification of textual concrete syntaxes in model engineering}, author = {Frédéric Jouault and Jean Bézivin and Ivan Kurtev}, year = {2006}, doi = {10.1145/1173706.1173744}, url = {http://doi.acm.org/10.1145/1173706.1173744}, tags = {meta-model, model-driven engineering, DSL, Meta-Environment, concrete syntax}, researchr = {https://researchr.org/publication/JouaultBK06}, cites = {0}, citedby = {3}, pages = {249-254}, booktitle = {Generative Programming and Component Engineering, 5th International Conference, GPCE 2006, Portland, Oregon, USA, October 22-26, 2006, Proceedings}, editor = {Stan Jarzabek and Douglas C. Schmidt and Todd L. Veldhuizen}, publisher = {ACM}, isbn = {1-59593-237-2}, } @inproceedings{KiczalesLMMLLI97, title = {Aspect-Oriented Programming}, author = {Gregor Kiczales and John Lamping and Anurag Mendhekar and Chris Maeda and Cristina Videira Lopes and Jean-Marc Loingtier and John Irwin}, year = {1997}, doi = {10.1007/BFb0053381}, tags = {object-oriented programming, program analysis, meta programming, AOP, composition, functional programming, analysis, reuse, aspect oriented programming, programming, subject-oriented programming, Meta-Environment, design, feature-oriented programming, meta-objects}, researchr = {https://researchr.org/publication/KiczalesLMMLLI97}, cites = {0}, citedby = {3}, pages = {220-242}, booktitle = {ECOOP 97 - Object-Oriented Programming, 11th European Conference, Jyväskylä, Finland, June 9-13, 1997, Proceedings}, editor = {Mehmet Aksit and Satoshi Matsuoka}, volume = {1241}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-63089-9}, } @article{DeursenKT93, title = {Origin Tracking}, author = {Arie van Deursen and Paul Klint and Frank Tip}, year = {1993}, researchr = {https://researchr.org/publication/DeursenKT93}, cites = {0}, citedby = {4}, journal = {Journal of Symbolic Computation}, volume = {15}, number = {5/6}, pages = {523-545}, } @inproceedings{Demirezen09, title = {Semantic framework for DSLs}, author = {Zekai Demirezen}, year = {2009}, doi = {10.1145/1639950.1640037}, url = {http://doi.acm.org/10.1145/1639950.1640037}, tags = {programming languages, model-to-model transformation, semantics, rule-based, meta programming, model checking, program verification, formal semantics, graph transformation, meta-model, modeling language, transformation language, language modeling, model-driven development, source-to-source, graph-rewriting, rules, model transformation, DSL, programming, abstraction, Meta-Environment, rewriting, systematic-approach, transformation, program transformation, domain-specific language}, researchr = {https://researchr.org/publication/Demirezen09}, cites = {14}, citedby = {0}, pages = {833-834}, booktitle = {Companion to the 24th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2009, October 25-29, 2009, Orlando, Florida, USA}, editor = {Shail Arora and Gary T. Leavens}, publisher = {ACM}, isbn = {978-1-60558-768-4}, } @article{metafront2007, title = {The metafront System: Safe and Extensible Parsing and Transformation}, author = {Claus Brabrand and Michael I. Schwartzbach}, year = {2007}, doi = {10.1016/j.scico.2005.06.007}, url = {http://dx.doi.org/10.1016/j.scico.2005.06.007}, tags = {transformation system, parsing, transformation}, researchr = {https://researchr.org/publication/metafront2007}, cites = {0}, citedby = {1}, journal = {Science of Computer Programming Journal (SCP)}, volume = {68}, number = {1}, } @article{MernikHS05, title = {When and how to develop domain-specific languages}, author = {Marjan Mernik and Jan Heering and Anthony M. Sloane}, year = {2005}, doi = {10.1145/1118890.1118892}, url = {http://doi.acm.org/10.1145/1118890.1118892}, tags = {programming languages, DSL engineering, program analysis, pattern language, DSL implementation approach, dsl examples, language engineering, points-to analysis, domain analysis, analysis, language design, source-to-source, survey, DSL, programming, design, systematic-approach, open-source, domain-specific language}, researchr = {https://researchr.org/publication/MernikHS05}, cites = {154}, citedby = {3}, journal = {ACM Computing Surveys}, volume = {37}, number = {4}, pages = {316-344}, } @article{KamU77:0, title = {Monotone Data Flow Analysis Frameworks}, author = {John B. Kam and Jeffrey D. Ullman}, year = {1977}, tags = {analysis, data-flow, data-flow analysis}, researchr = {https://researchr.org/publication/KamU77%3A0}, cites = {0}, citedby = {1}, journal = {Acta Informatica}, volume = {7}, pages = {305-317}, } @inproceedings{OngkingcoATHMS06, title = {Adding open modules to AspectJ}, author = {Neil Ongkingco and Pavel Avgustinov and Julian Tibble and Laurie J. Hendren and Oege de Moor and Ganesh Sittampalam}, year = {2006}, doi = {10.1145/1119655.1119664}, url = {http://doi.acm.org/10.1145/1119655.1119664}, tags = {AspectJ, source-to-source, open-source}, researchr = {https://researchr.org/publication/OngkingcoATHMS06}, cites = {0}, citedby = {1}, pages = {39-50}, booktitle = {Proceedings of the 5th International Conference on Aspect-Oriented Software Development, AOSD 2006, Bonn, Germany, March 20-24, 2006}, editor = {Robert E. Filman}, publisher = {ACM}, isbn = {1-59593-300-X}, } @proceedings{ares:1998, title = {Development and Evolution of Software Architectures for Product Families, Second International ESPRIT ARES Workshop, Las Palmas de Gran Canaria, Spain, February 26-27, 1998, Proceedings}, year = {1998}, tags = {software architecture, architecture, software evolution}, researchr = {https://researchr.org/publication/ares%3A1998}, cites = {0}, citedby = {1}, booktitle = {Development and Evolution of Software Architectures for Product Families, Second International ESPRIT ARES Workshop, Las Palmas de Gran Canaria, Spain, February 26-27, 1998, Proceedings}, conference = {ares}, editor = {Frank van der Linden}, volume = {1429}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-64916-6}, } @inproceedings{AbrahamE07, title = {Exploiting Domain-Specific Structures For End-User Programming Support Tools}, author = {Robin Abraham and Martin Erwig}, year = {2007}, url = {http://drops.dagstuhl.de/opus/volltexte/2007/1086}, tags = {programming}, researchr = {https://researchr.org/publication/AbrahamE07}, cites = {0}, citedby = {0}, booktitle = {End-User Software Engineering, 18.02. - 23.02.2007}, editor = {Margaret M. Burnett and Gregor Engels and Brad A. Myers and Gregg Rothermel}, volume = {07081}, series = {Dagstuhl Seminar Proceedings}, publisher = {Internationales Begegnungs- und Forschungszentrum für Informatik (IBFI), Schloss Dagstuhl, Germany}, } @incollection{Halpin04:0, title = {Comparing Metamodels for ER, ORM and UML Data Models}, author = {Terry A. Halpin}, year = {2004}, tags = {UML, data-flow, ORM, object-role modeling}, researchr = {https://researchr.org/publication/Halpin04%3A0}, cites = {0}, citedby = {0}, pages = {23-44}, booktitle = {Advanced Topics in Database Research, Vol. 3}, editor = {Keng Siau}, publisher = {Idea Group}, isbn = {1-59140-296-4}, } @inproceedings{Sheard01:1, title = {Accomplishments and Research Challenges in Meta-programming}, author = {Tim Sheard}, year = {2001}, url = {http://link.springer.de/link/service/series/0558/bibs/2196/21960002.htm}, tags = {meta programming, meta-model, programming, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/Sheard01%3A1}, cites = {0}, citedby = {1}, pages = {2-44}, booktitle = {Semantics, Applications, and Implementation of Program Generation, Second International Workshop, SAIG 2001, Florence, Italy, September 6, 2001, Proceedings}, editor = {Walid Taha}, volume = {2196}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-42558-6}, } @inproceedings{WeiseC93, title = {Programmable Syntax Macros}, author = {Daniel Weise and Roger F. Crew}, year = {1993}, tags = {macros}, researchr = {https://researchr.org/publication/WeiseC93}, cites = {0}, citedby = {1}, pages = {156-165}, booktitle = {PLDI}, } @article{Bird84, title = {Using Circular Programs to Eliminate Multiple Traversals of Data}, author = {Richard S. Bird}, year = {1984}, tags = {traversal, data-flow programming}, researchr = {https://researchr.org/publication/Bird84}, cites = {0}, citedby = {1}, journal = {Acta Informatica}, volume = {21}, pages = {239-250}, } @misc{www:tmf, title = {Textual Modeling Framework}, tags = {meta-model, modeling, Meta-Environment}, researchr = {https://researchr.org/publication/www%3Atmf}, cites = {0}, citedby = {0}, howpublished = {http://www.eclipse.org/modeling/tmf/}, } @inproceedings{MiecznikowskiH01, title = {Decompiling Java Using Staged Encapsulation}, author = {Jerome Miecznikowski and Laurie J. Hendren}, year = {2001}, url = {http://computer.org/proceedings/wcre/1303/13030368abs.htm}, tags = {Java}, researchr = {https://researchr.org/publication/MiecznikowskiH01}, cites = {0}, citedby = {1}, pages = {368-374}, booktitle = {WCRE}, } @misc{Freeze2006, title = {Creating DSLs with Ruby}, author = {J. Freeze}, year = {2006}, month = {March}, url = {http://www.artima.com/rubycs/articles/ruby_as_dsl.html}, tags = {DSL, Ruby}, researchr = {https://researchr.org/publication/Freeze2006}, cites = {0}, citedby = {1}, howpublished = {http://www.artima.com/rubycs/articles/ruby_as_dsl.html}, } @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 = {10.1145/1449764.1449772}, url = {http://doi.acm.org/10.1145/1449764.1449772}, tags = {compilation by normalization, rule-based, Java, synchronization, translation, meta-model, modeling language, Stratego/XT, language modeling, composition, constraints, source-to-source, C++, Dryad, security, compiler, Meta-Environment, extensible language, systematic-approach, open-source, Stratego, JavaFront, domain-specific language}, researchr = {https://researchr.org/publication/KatsBV08}, cites = {44}, citedby = {3}, pages = {91-108}, booktitle = {Proceedings of the 23rd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2008, October 19-23, 2008, Nashville, TN, USA}, editor = {Gail E. Harris}, publisher = {ACM}, isbn = {978-1-60558-215-3}, } @article{HedinM03, title = {JastAdd--an aspect-oriented compiler construction system}, author = {Görel Hedin and Eva Magnusson}, year = {2003}, doi = {10.1016/S0167-6423(02)00109-0}, url = {http://dx.doi.org/10.1016/S0167-6423(02)00109-0}, tags = {compiler, JastAdd}, researchr = {https://researchr.org/publication/HedinM03}, cites = {0}, citedby = {2}, journal = {Science of Computer Programming}, volume = {47}, number = {1}, pages = {37-58}, } @article{Hudak96, title = {Building Domain-Specific Embedded Languages}, author = {Paul Hudak}, year = {1996}, doi = {10.1145/242224.242477}, url = {http://doi.acm.org/10.1145/242224.242477}, tags = {domain-specific language}, researchr = {https://researchr.org/publication/Hudak96}, cites = {0}, citedby = {3}, journal = {ACM Computing Surveys}, volume = {28}, number = {4es}, pages = {196}, } @book{Parr2007, title = {The De finitive ANTLR Reference: Building Domain-Specific Languages}, author = {Terence John Parr}, year = {2007}, month = {May}, tags = {C++, domain-specific language}, researchr = {https://researchr.org/publication/Parr2007}, cites = {0}, citedby = {1}, publisher = {Pragmatic Programmers}, } @article{Paakki95, title = {Attribute Grammar Paradigms - A High-Level Methodology in Language Implementation}, author = {Jukka Paakki}, year = {1995}, tags = {attribute grammars, grammar}, researchr = {https://researchr.org/publication/Paakki95}, cites = {0}, citedby = {2}, journal = {ACM Computing Surveys}, volume = {27}, number = {2}, pages = {196-255}, } @inproceedings{BauerE09, title = {Declarative Scripting in Haskell}, author = {Tim Bauer and Martin Erwig}, year = {2009}, doi = {10.1007/978-3-642-12107-4_21}, url = {http://dx.doi.org/10.1007/978-3-642-12107-4_21}, tags = {Haskell}, researchr = {https://researchr.org/publication/BauerE09}, cites = {0}, citedby = {0}, pages = {294-313}, booktitle = {Software Language Engineering, Second International Conference, SLE 2009}, editor = {Mark G. J. van den Brand and Dragan Gasevic and Jeffrey G. Gray}, volume = {5969}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-12106-7}, } @inproceedings{VisserBT98, title = {Building Program Optimizers with Rewriting Strategies}, author = {Eelco Visser and Zine-El-Abidine Benaissa and Andrew P. Tolmach}, year = {1998}, doi = {10.1145/289423.289425}, url = {http://doi.acm.org/10.1145/289423.289425}, tags = {programming languages, optimization, semantics, rule-based, meta programming, graph transformation, variable binding, Stratego/XT, transformation language, term rewriting, composition, graph-rewriting, rules, C++, program optimization, Meta-Environment, higher-order transformations, rewriting, rewriting strategies, transformation, Stratego, program transformation}, researchr = {https://researchr.org/publication/VisserBT98}, cites = {0}, citedby = {5}, pages = {13-26}, booktitle = {Proceedings of the third ACM SIGPLAN international conference on Functional programming}, editor = {Matthias Felleisen and Paul Hudak and Christian Queinnec}, address = {Baltimore, Maryland, United States}, publisher = {ACM}, } @inproceedings{SchwerdfegerW09-SLE, title = {Verifiable Parse Table Composition for Deterministic Parsing}, author = {August Schwerdfeger and Eric {Van Wyk}}, year = {2009}, doi = {10.1007/978-3-642-12107-4_15}, url = {http://dx.doi.org/10.1007/978-3-642-12107-4_15}, tags = {composition, parsing}, researchr = {https://researchr.org/publication/SchwerdfegerW09-SLE}, cites = {0}, citedby = {1}, pages = {184-203}, booktitle = {Software Language Engineering, Second International Conference, SLE 2009}, editor = {Mark G. J. van den Brand and Dragan Gasevic and Jeffrey G. Gray}, volume = {5969}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-12106-7}, } @inproceedings{BakerH02:0, title = {Maya: Multiple-Dispatch Syntax Extension in Java}, author = {Jason Baker and Wilson C. Hsieh}, year = {2002}, doi = {10.1145/512529.512562}, url = {http://doi.acm.org/10.1145/512529.512562}, tags = {Java, C++}, researchr = {https://researchr.org/publication/BakerH02%3A0}, cites = {0}, citedby = {1}, pages = {270-281}, booktitle = {PLDI}, } @inproceedings{Pfeiffer2008, title = {A comparison of tool support for textual domain-specific languages}, author = {M. Pfeiffer and J. Pichler}, year = {2008}, tags = {domain-specific language}, researchr = {https://researchr.org/publication/Pfeiffer2008}, cites = {0}, citedby = {1}, booktitle = {Workshop on Domain- Specific Modeling}, } @inproceedings{Visser02, title = {Meta-programming with Concrete Object Syntax}, author = {Eelco Visser}, year = {2002}, doi = {10.1007/3-540-45821-2_19}, url = {https://doi.org/10.1007/3-540-45821-2_19}, tags = {programming languages, model-to-model transformation, object-oriented programming, concrete object syntax, syntax definition, meta programming, case study, SDF, meta-model, abstract syntax, Stratego/XT, transformation language, source-to-source, model transformation, programming, subject-oriented programming, Meta-Environment, parsing, scannerless parsing, systematic-approach, ASF+SDF, feature-oriented programming, concrete syntax, meta-objects, transformation, Stratego, program transformation}, researchr = {https://researchr.org/publication/Visser02}, cites = {23}, citedby = {6}, pages = {299-315}, booktitle = {Generative Programming and Component Engineering, ACM SIGPLAN/SIGSOFT Conference, GPCE 2002, Pittsburgh, PA, USA, October 6-8, 2002, Proceedings}, editor = {Don S. Batory and Charles Consel and Walid Taha}, volume = {2487}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-44284-7}, } @inproceedings{HemelKV08, title = {Code Generation by Model Transformation}, author = {Zef Hemel and Lennart C. L. Kats and Eelco Visser}, year = {2008}, doi = {10.1007/978-3-540-69927-9_13}, url = {http://dx.doi.org/10.1007/978-3-540-69927-9_13}, tags = {programming languages, model-to-model transformation, object-oriented programming, WebDSL, concrete object syntax, rule-based, transformation engineering, syntax definition, meta programming, data-flow language, pattern language, case study, graph transformation, meta-model, modeling language, modeling, language engineering, transformation language, software language engineering, language modeling, web engineering, data-flow programming, model-driven development, data-flow, source-to-source, graph-rewriting, software engineering, rules, model-driven engineering, C++, programming paradigms, code generation, object-role modeling, aspect oriented programming, model transformation, web applications, DSL, subject-oriented programming, Meta-Environment, rewriting, rewriting strategies, feature-oriented programming, concrete syntax, open-source, meta-objects, transformation, Stratego, program transformation, domain-specific language}, researchr = {https://researchr.org/publication/HemelKV08}, cites = {0}, citedby = {3}, pages = {183-198}, booktitle = {Theory and Practice of Model Transformations, First International Conference, ICMT 2008, Zürich, Switzerland, July 1-2, 2008, Proceedings}, editor = {Antonio Vallecillo and Jeffrey G. Gray and Alfonso Pierantonio}, volume = {5063}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-69926-2}, } @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 = {10.1145/1869459.1869535}, url = {http://doi.acm.org/10.1145/1869459.1869535}, tags = {parsing algorithm, syntax definition, composition, software evolution, C++, compiler, parsing}, researchr = {https://researchr.org/publication/KatsVW10}, cites = {0}, citedby = {1}, pages = {918-932}, booktitle = {Proceedings of the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2010}, editor = {William R. Cook and Siobhán Clarke and Martin C. Rinard}, address = {Reno/Tahoe, Nevada}, publisher = {ACM}, isbn = {978-1-4503-0203-6}, } @techreport{tratt05convergepl, title = {The Converge programming language}, author = {Laurence Tratt}, year = {2005}, month = {February}, tags = {converge, programming languages, programming, extensible language}, researchr = {https://researchr.org/publication/tratt05convergepl}, cites = {0}, citedby = {1}, institution = {Department of Computer Science, King's College London}, number = {TR-05-01}, } @inproceedings{Visser03, title = {Program Transformation with {Stratego/XT}: Rules, Strategies, Tools, and Systems in {Stratego/XT 0.9}}, author = {Eelco Visser}, year = {2003}, doi = {10.1007/978-3-540-25935-0_13}, url = {https://doi.org/10.1007/978-3-540-25935-0_13}, tags = {control systems, programming languages, rule-based, graph transformation, Stratego/XT, transformation language, composition, graph-rewriting, rules, programming paradigms, transformation system, abstraction, rewriting, parsing, rewriting strategies, transformation, Stratego, program transformation}, researchr = {https://researchr.org/publication/Visser03}, cites = {0}, citedby = {4}, pages = {216-238}, booktitle = {Domain-Specific Program Generation, International Seminar, Dagstuhl Castle, Germany, March 23-28, 2003, Revised Papers}, editor = {Christian Lengauer and Don S. Batory and Charles Consel and Martin Odersky}, volume = {3016}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-22119-0}, } @inproceedings{HalfondOM06, title = {Using positive tainting and syntax-aware evaluation to counter SQL injection attacks}, author = {William G. J. Halfond and Alessandro Orso and Panagiotis Manolios}, year = {2006}, doi = {10.1145/1181775.1181797}, url = {http://doi.acm.org/10.1145/1181775.1181797}, tags = {injection attack, SQL, context-aware}, researchr = {https://researchr.org/publication/HalfondOM06}, cites = {0}, citedby = {1}, pages = {175-185}, booktitle = {Proceedings of the 14th ACM SIGSOFT International Symposium on Foundations of Software Engineering, FSE 2005, Portland, Oregon, USA, November 5-11, 2006}, editor = {Michal Young and Premkumar T. Devanbu}, publisher = {ACM}, isbn = {1-59593-468-5}, } @article{CardelliD99, title = {Service Combinators for Web Computing}, author = {Luca Cardelli and Rowan Davies}, year = {1999}, url = {http://computer.org/tse/ts1999/e0309abs.htm}, tags = {web service}, researchr = {https://researchr.org/publication/CardelliD99}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {25}, number = {3}, pages = {309-316}, } @book{Budinsky-2004-EMF, title = {Eclipse Modeling Framework}, author = {F. Budinsky and D. Steinberg and E. Merks and R. Ellersick and T. J. Grose}, year = {2004}, tags = {Eclipse, meta-model, modeling, Meta-Environment}, researchr = {https://researchr.org/publication/Budinsky-2004-EMF}, cites = {0}, citedby = {3}, publisher = {Addison-Wesley}, } @inproceedings{BonacheaFRS99, title = {Hancock: a language for processing very large-scale data}, author = {Dan Bonachea and Kathleen Fisher and Anne Rogers and Frederick Smith}, year = {1999}, doi = {10.1145/331960.331981}, url = {http://doi.acm.org/10.1145/331960.331981}, tags = {data-flow language, data-flow, DSL}, researchr = {https://researchr.org/publication/BonacheaFRS99}, cites = {0}, citedby = {1}, pages = {163-176}, booktitle = {DSL}, } @mastersthesis{Kats07, title = {Supporting Language Extension and Separate Compilation by Mixing Java and Bytecode}, author = {Lennart C. L. Kats}, year = {2007}, month = {August}, note = {INF/SCR-07-02}, tags = {Java, synchronization, language extension, modeling language, language modeling, composition, language design, source-to-source, graph-rewriting, direct manipulation, C++, code generation, debugging, compiler, language embedding, information models, language composition, rewriting, compilers, process modeling, systematic-approach, open-source, domain-specific language}, researchr = {https://researchr.org/publication/Kats07}, cites = {0}, citedby = {1}, school = {Utrecht University}, address = {Utrecht, The Netherlands}, advisor = {Eelco Visser and Martin Bravenboer}, } @inproceedings{BravenboerV04, title = {Concrete syntax for objects: domain-specific language embedding and assimilation without restrictions}, author = {Martin Bravenboer and Eelco Visser}, year = {2004}, doi = {10.1145/1028976.1029007}, url = {http://doi.acm.org/10.1145/1028976.1029007}, tags = {programming languages, object-oriented programming, concrete object syntax, syntax definition, meta programming, assimilation, SDF, XML, XML Schema, Stratego/XT, transformation language, composition, MetaBorg, language design, reuse, code generation, subject-oriented programming, abstraction, Meta-Environment, extensible language, ASF+SDF, feature-oriented programming, concrete syntax, meta-objects, transformation, Stratego, program transformation, domain-specific language}, researchr = {https://researchr.org/publication/BravenboerV04}, cites = {51}, citedby = {8}, pages = {365-383}, booktitle = {Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2004}, editor = {John M. Vlissides and Douglas C. Schmidt}, address = {Vancouver, BC, Canada}, publisher = {ACM}, isbn = {1-58113-831-8}, } @inproceedings{BiermanMS05, title = {The Essence of Data Access in C::::omega::::}, author = {Gavin M. Bierman and Erik Meijer and Wolfram Schulte}, year = {2005}, doi = {10.1007/11531142_13}, url = {http://dx.doi.org/10.1007/11531142_13}, tags = {data-flow, C++}, researchr = {https://researchr.org/publication/BiermanMS05}, cites = {0}, citedby = {1}, pages = {287-311}, booktitle = {ECOOP 2005 - Object-Oriented Programming, 19th European Conference, Glasgow, UK, July 25-29, 2005, Proceedings}, editor = {Andrew P. Black}, volume = {3586}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-27992-X}, } @book{AhoLSU2006, title = {Compilers: Principles, Techniques, and Tools (2nd Edition)}, author = {A. V. Aho and M. S. Lam and R. Sethi and J. D. Ullman}, year = {2006}, month = {August}, tags = {principles, compiler}, researchr = {https://researchr.org/publication/AhoLSU2006}, cites = {0}, citedby = {2}, publisher = {Addison Wesley}, } @inproceedings{EaddyAHMB07, title = {Debugging Aspect-Enabled Programs}, author = {Marc Eaddy and Alfred V. Aho and Weiping Hu and Paddy McDonald and Julian Burger}, year = {2007}, doi = {10.1007/978-3-540-77351-1_17}, url = {http://dx.doi.org/10.1007/978-3-540-77351-1_17}, tags = {debugging}, researchr = {https://researchr.org/publication/EaddyAHMB07}, cites = {0}, citedby = {0}, pages = {200-215}, booktitle = {Software Composition, 6th International Symposium, SC 2007, Braga, Portugal, March 24-25, 2007, Revised Selected Papers}, editor = {Markus Lumpe and Wim Vanderperren}, volume = {4829}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-77350-4}, } @article{DeursenK98, title = {Little languages: little maintenance?}, author = {Arie van Deursen and Paul Klint}, year = {1998}, doi = {10.1002/(SICI)1096-908X(199803/04)10:2<75::AID-SMR168>3.0.CO;2-5}, url = {http://dx.doi.org/10.1002/(SICI)1096-908X(199803/04)10:2<75::AID-SMR168>3.0.CO;2-5}, tags = {rule-based, little language, maintenance, compiler, DSL, domain-specific language}, researchr = {https://researchr.org/publication/DeursenK98}, cites = {0}, citedby = {1}, journal = {Journal of Software Maintenance}, volume = {10}, number = {2}, pages = {75-92}, } @article{ElliottFM03, title = {Compiling embedded languages}, author = {Conal Elliott and Sigbjorn Finne and Oege de Moor}, year = {2003}, doi = {10.1017/S0956796802004574}, url = {http://dx.doi.org/10.1017/S0956796802004574}, tags = {embedded languages, programming languages, optimization, rule-based, syntax definition, data-flow language, graph transformation, interpreter, transformation language, functional programming, data-flow programming, data-flow, graph-rewriting, code generation, compiler, DSL, program optimization, internal languages, rewriting, transformation, program transformation, domain-specific language}, researchr = {https://researchr.org/publication/ElliottFM03}, cites = {17}, citedby = {0}, journal = {Journal of Functional Programming}, volume = {13}, number = {3}, pages = {455-481}, } @book{GoslingJSB2005, title = {The Java Language Specification}, author = {James Gosling and Bill Joy and Guy L. Steele Jr. and Gilad Bracha}, year = {2005}, month = {5}, tags = {Java}, researchr = {https://researchr.org/publication/GoslingJSB2005}, cites = {0}, citedby = {1}, edition = {3}, publisher = {Addison Wesley}, } @inproceedings{SirerB99, title = {Using production grammars in software testing}, author = {Emin Gün Sirer and Brian N. Bershad}, year = {1999}, doi = {10.1145/331960.331965}, url = {http://doi.acm.org/10.1145/331960.331965}, tags = {rule-based, Java, deployment, test coverage, modeling language, language modeling, testing, certification, code generation, security, DSL, abstract machine, coverage, extensible language, grammar, domain-specific language}, researchr = {https://researchr.org/publication/SirerB99}, cites = {0}, citedby = {1}, pages = {1-13}, booktitle = {DSL}, } @inproceedings{FernandezST99, title = {Declarative specification of data-intensive Web sites}, author = {Mary F. Fernandez and Dan Suciu and Igor Tatarinov}, year = {1999}, doi = {10.1145/331960.331979}, url = {http://doi.acm.org/10.1145/331960.331979}, tags = {data-flow, DSL}, researchr = {https://researchr.org/publication/FernandezST99}, cites = {0}, citedby = {1}, pages = {135-148}, booktitle = {DSL}, } @article{ChikofskyC90, title = {Reverse Engineering and Design Recovery: A Taxonomy}, author = {Elliot J. Chikofsky and James H. Cross II}, year = {1990}, tags = {reverse engineering, taxonomy, design}, researchr = {https://researchr.org/publication/ChikofskyC90}, cites = {0}, citedby = {1}, journal = {IEEE Software}, volume = {7}, number = {1}, pages = {13-17}, } @inproceedings{WeckRS07, title = {Component-Oriented Programming}, author = {Wolfgang Weck and Ralf Reussner and Clemens A. Szyperski}, year = {2007}, doi = {10.1007/978-3-540-78195-0_12}, url = {http://dx.doi.org/10.1007/978-3-540-78195-0_12}, tags = {object-oriented programming, programming, subject-oriented programming, feature-oriented programming}, researchr = {https://researchr.org/publication/WeckRS07}, cites = {0}, citedby = {0}, pages = {123-131}, booktitle = {Object-Oriented Technology. ECOOP 2007 Workshop Reader, Berlin, Germany, July 30-31, 2007, Final Reports}, editor = {Michael Cebulla}, volume = {4906}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-78194-3}, } @inproceedings{Fuchs97:0, title = {Domain Specific Languages for ad hoc Distributed Applications}, author = {Matthew Fuchs}, year = {1997}, url = {http://www.usenix.org/publications/library/proceedings/dsl97/fuchs.html}, tags = {DSL, domain-specific language}, researchr = {https://researchr.org/publication/Fuchs97%3A0}, cites = {0}, citedby = {1}, pages = {27-36}, booktitle = {Proceedings of the Conference on Domain-Specific Languages, October 15-17, 1997, Santa Barbara, California, USA}, publisher = {USENIX}, } @inproceedings{GoldschmidtBU08, title = {Classification of Concrete Textual Syntax Mapping Approaches}, author = {Thomas Goldschmidt and Steffen Becker and Axel Uhl}, year = {2008}, doi = {10.1007/978-3-540-69100-6_12}, url = {http://dx.doi.org/10.1007/978-3-540-69100-6_12}, tags = {classification, systematic-approach, concrete syntax}, researchr = {https://researchr.org/publication/GoldschmidtBU08}, cites = {0}, citedby = {1}, pages = {169-184}, booktitle = {Model Driven Architecture - Foundations and Applications, 4th European Conference, ECMDA-FA 2008, Berlin, Germany, June 9-13, 2008. Proceedings}, editor = {Ina Schieferdecker and Alan Hartman}, volume = {5095}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-69095-5}, } @article{HerndonB88, title = {The Realizable Benefits of a Language Prototyping Language}, author = {Robert M. Herndon Jr. and Valdis Berzins}, year = {1988}, url = {http://www.computer.org/tse/ts1988/e0803abs.htm}, tags = {translation, meta-model, modeling language, modeling, language modeling, language design, model-driven development, Meta-Environment}, researchr = {https://researchr.org/publication/HerndonB88}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {14}, number = {6}, pages = {803-809}, } @article{Cordy06, title = {The TXL source transformation language}, author = {James R. Cordy}, year = {2006}, doi = {10.1016/j.scico.2006.04.002}, url = {http://dx.doi.org/10.1016/j.scico.2006.04.002}, tags = {model-to-model transformation, meta-model, transformation language, source-to-source, TXL, model transformation, Meta-Environment, open-source, transformation}, researchr = {https://researchr.org/publication/Cordy06}, cites = {0}, citedby = {1}, journal = {Science of Computer Programming}, volume = {61}, number = {3}, pages = {190-210}, } @article{BrabrandSV03, title = {The metafront System: Extensible Parsing and Transformation}, author = {Claus Brabrand and Michael I. Schwartzbach and Mads Vanggaard}, year = {2003}, url = {http://www1.elsevier.com/gej-ng/31/29/23/133/52/show/Products/notes/index.htt#009}, tags = {transformation system, parsing, transformation}, researchr = {https://researchr.org/publication/BrabrandSV03}, cites = {0}, citedby = {1}, journal = {Electronic Notes in Theoretical Computer Science}, volume = {82}, number = {3}, pages = {592-611}, } @inproceedings{SeymourD01, title = {Automatic translation of Fortran to JVM bytecode}, author = {Keith Seymour and Jack Dongarra}, year = {2001}, url = {http://portal.acm.org/citation.cfm?id=376656.376833}, tags = {Java, translation}, researchr = {https://researchr.org/publication/SeymourD01}, cites = {0}, citedby = {1}, pages = {126-133}, booktitle = {Java Grande}, } @inproceedings{BravenboerV07, title = {Designing Syntax Embeddings and Assimilations for Language Libraries}, author = {Martin Bravenboer and Eelco Visser}, year = {2007}, doi = {10.1007/978-3-540-69073-3_5}, url = {http://dx.doi.org/10.1007/978-3-540-69073-3_5}, tags = {syntax embedding, syntax definition, assimilation, transformation language, architecture, language design, DSL, language libraries, design, transformation, domain-specific language}, researchr = {https://researchr.org/publication/BravenboerV07}, cites = {24}, citedby = {1}, pages = {34-46}, booktitle = {Models in Software Engineering, Workshops and Symposia at MoDELS 2007, Nashville, TN, USA, September 30 - October 5, 2007, Reports and Revised Selected Papers}, editor = {Holger Giese}, volume = {5002}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-69069-6}, } @inproceedings{Reng09b, title = {Why Smalltalk Wins the Host Languages Shootout}, author = {Lukas Renggli and Tudor Gîrba}, year = {2009}, note = {To appear}, tags = {DSL engineering, language engineering, constraints, reuse, DSL, Meta-Environment}, researchr = {https://researchr.org/publication/Reng09b}, cites = {0}, citedby = {1}, booktitle = {Proceedings of International Workshop on Smalltalk Technologies (IWST 2009)}, publisher = {ACM Digital Library}, } @inproceedings{WykMBK02, title = {Forwarding in Attribute Grammars for Modular Language Design}, author = {Eric {Van Wyk} and Oege de Moor and Kevin Backhouse and Paul Kwiatkowski}, year = {2002}, url = {http://link.springer.de/link/service/series/0558/bibs/2304/23040128.htm}, tags = {attribute grammars, language design, design, grammar}, researchr = {https://researchr.org/publication/WykMBK02}, cites = {0}, citedby = {4}, pages = {128-142}, booktitle = {Compiler Construction, 11th International Conference, CC 2002, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2002, Grenoble, France, April 8-12, 2002, Proceedings}, editor = {R. Nigel Horspool}, volume = {2304}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-43369-4}, } @inproceedings{VogtSK89, title = {Higher-Order Attribute Grammars}, author = {Harald Vogt and S. Doaitse Swierstra and Matthijs F. Kuiper}, year = {1989}, tags = {attribute grammars, grammar}, researchr = {https://researchr.org/publication/VogtSK89}, cites = {0}, citedby = {1}, pages = {131-145}, booktitle = {Proceedings of the ACM SIGPLAN'89 Conference on Programming Language Design and Implementation (PLDI), Portland, Oregon, USA, June 21-23, 1989}, editor = {Richard L. Wexelblat}, publisher = {ACM}, isbn = {0-89791-306-X}, } @article{HorowitzKN85, title = {A Survey of Application Generators}, author = {Ellis Horowitz and Alfons Kemper and Balaji Narasimhan}, year = {1985}, tags = {survey}, researchr = {https://researchr.org/publication/HorowitzKN85}, cites = {0}, citedby = {1}, journal = {IEEE Software}, volume = {2}, number = {1}, pages = {40-54}, } @inproceedings{HirzelG07, title = {Jeannie: granting java native interface developers their wishes}, author = {Martin Hirzel and Robert Grimm}, year = {2007}, doi = {10.1145/1297027.1297030}, url = {http://doi.acm.org/10.1145/1297027.1297030}, tags = {Java}, researchr = {https://researchr.org/publication/HirzelG07}, cites = {0}, citedby = {1}, pages = {19-38}, booktitle = {Proceedings of the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2007, October 21-25, 2007, Montreal, Quebec, Canada}, editor = {Richard P. Gabriel and David F. Bacon and Cristina Videira Lopes and Guy L. Steele Jr.}, publisher = {ACM}, isbn = {978-1-59593-786-5}, } @article{Engler99, title = {Interface Compilation: Steps Toward Compiling Program Interfaces as Languages}, author = {Dawson R. Engler}, year = {1999}, url = {http://computer.org/tse/ts1999/e0387abs.htm}, tags = {programming languages, compiler}, researchr = {https://researchr.org/publication/Engler99}, cites = {0}, citedby = {1}, journal = {IEEE Trans. Software Eng.}, volume = {25}, number = {3}, pages = {387-400}, } @inproceedings{HeidenreichJKSW09, title = {Derivation and Refinement of Textual Syntax for Models}, author = {Florian Heidenreich and Jendrik Johannes and Sven Karol and Mirko Seifert and Christian Wende}, year = {2009}, doi = {10.1007/978-3-642-02674-4_9}, url = {http://dx.doi.org/10.1007/978-3-642-02674-4_9}, tags = {rule-based, Eclipse, model editor, meta-model, modeling language, modeling, refinement, language engineering, software language engineering, language modeling, language design, metamodelling, EMF, model-driven development, software engineering, model-driven engineering, Meta-Environment, emftext, design, systematic-approach, concrete syntax, textual concrete syntax}, researchr = {https://researchr.org/publication/HeidenreichJKSW09}, cites = {0}, citedby = {1}, pages = {114-129}, booktitle = {Model Driven Architecture - Foundations and Applications, 5th European Conference, ECMDA-FA 2009, Enschede, The Netherlands, June 23-26, 2009. Proceedings}, editor = {Richard F. Paige and Alan Hartman and Arend Rensink}, volume = {5562}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-02673-7}, } @article{DeursenKV00, title = {Domain-Specific Languages: An Annotated Bibliography}, author = {Arie van Deursen and Paul Klint and Joost Visser}, year = {2000}, doi = {10.1145/352029.352035}, url = {http://doi.acm.org/10.1145/352029.352035}, tags = {Domain-specific languages, bibliography, language design, maintenance, survey, annotated bibliography, design, domain-specific language}, researchr = {https://researchr.org/publication/DeursenKV00}, cites = {79}, citedby = {4}, journal = {SIGPLAN Notices}, volume = {35}, number = {6}, pages = {26-36}, } @inproceedings{imp, title = {Accelerating the Creation of Customized, Language-Specific {IDEs} in {Eclipse}}, author = {Philippe Charles and Robert M. Fuhrer and Stanley M. Sutton Jr. and Evelyn Duesterwald and Jurgen J. Vinju}, year = {2009}, tags = {programming languages, object-oriented programming, IMP, Eclipse, meta programming, architecture, extreme programming, source-to-source, DSL, programming, Meta-Environment, extensible language, feature-oriented programming, IDE, open-source, domain-specific language}, researchr = {https://researchr.org/publication/imp}, cites = {0}, citedby = {2}, booktitle = {Proceedings of the 24th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2009}, editor = {Shail Arora and Gary T. Leavens}, } @book{superlanguages, title = {Superlanguages: Developing Languages and Applications with XMF}, author = {A. Clark and P. Sammut and J. Willans}, year = {2008}, month = {March}, url = {http://itcentre.tvu.ac.uk/~clark/Papers/Superlanguages.pdf}, tags = {extensible language}, researchr = {https://researchr.org/publication/superlanguages}, cites = {0}, citedby = {2}, edition = {1}, } @inproceedings{KojarskiL07:0, title = {Awesome: an aspect co-weaving system for composing multiple aspect-oriented extensions}, author = {Sergei Kojarski and David H. Lorenz}, year = {2007}, doi = {10.1145/1297027.1297065}, url = {http://doi.acm.org/10.1145/1297027.1297065}, tags = {weaving}, researchr = {https://researchr.org/publication/KojarskiL07%3A0}, cites = {0}, citedby = {0}, pages = {515-534}, booktitle = {Proceedings of the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2007, October 21-25, 2007, Montreal, Quebec, Canada}, editor = {Richard P. Gabriel and David F. Bacon and Cristina Videira Lopes and Guy L. Steele Jr.}, publisher = {ACM}, isbn = {978-1-59593-786-5}, } @inproceedings{LaddR94-0, title = {Two Application languages in software production}, author = {Ladd, David A. and Ramming, J. Christopher}, year = {1994}, tags = {programming languages, object-oriented programming, language design, constraints, software evolution, C++, subject-oriented programming, database, feature-oriented programming}, researchr = {https://researchr.org/publication/LaddR94-0}, cites = {0}, citedby = {1}, booktitle = {VHLLS'94: Proceedings of the USENIX 1994 Very High Level Languages Symposium Proceedings on USENIX 1994 Very High Level Languages Symposium Proceedings}, address = {Berkeley, CA, USA}, publisher = {USENIX Association}, } @article{CliftonMLC06, title = {MultiJava: Design rationale, compiler implementation, and applications}, author = {Curtis Clifton and Todd D. Millstein and Gary T. Leavens and Craig Chambers}, year = {2006}, doi = {10.1145/1133651.1133655}, url = {http://doi.acm.org/10.1145/1133651.1133655}, tags = {compiler, design}, researchr = {https://researchr.org/publication/CliftonMLC06}, cites = {0}, citedby = {1}, journal = {ACM Transactions on Programming Languages and Systems}, volume = {28}, number = {3}, pages = {517-575}, } @phdthesis{Bra08, title = {Exercises in free syntax. syntax definition, parsing, and assimilation of language conglomerates}, author = {Martin Bravenboer}, year = {2008}, month = {January}, tags = {syntax definition, assimilation, parsing}, researchr = {https://researchr.org/publication/Bra08}, cites = {168}, citedby = {1}, school = {Utrecht University}, address = {Utrecht, The Netherlands}, advisor = {S. Doaitse Swierstra and Eelco Visser}, } @techreport{Visser97-SGLR, title = {Scannerless Generalized-{LR} Parsing}, author = {Eelco Visser}, year = {1997}, month = {July}, tags = {parsing algorithm, GLR parsing, rule-based, SDF, lexical syntax, disambiguation, GLR, analysis, rules, context-aware, parsing, scannerless parsing, systematic-approach, ASF+SDF, SGLR, grammar}, researchr = {https://researchr.org/publication/Visser97-SGLR}, cites = {0}, citedby = {6}, institution = {Programming Research Group, University of Amsterdam}, number = {P9707}, } @inproceedings{RepsT84, title = {The Synthesizer Generator}, author = {Thomas W. Reps and Tim Teitelbaum}, year = {1984}, doi = {10.1145/800020.808247}, url = {http://doi.acm.org/10.1145/800020.808247}, tags = {programming languages, composition, Synthesizer Generator}, researchr = {https://researchr.org/publication/RepsT84}, cites = {16}, citedby = {1}, pages = {42-48}, booktitle = {Proceedings of the first ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments}, address = {New York, USA}, publisher = {ACM}, } @article{Bruce97, title = {What makes a good domain-specific language? APOSTLE, and its approach to parallel discrete event simulation}, author = {David Bruce}, year = {1997}, doi = {10.1.1.56.4176}, tags = {programming languages, optimization, language design, parallel programming, principles, programming, program optimization, design, systematic-approach, domain-specific language}, researchr = {https://researchr.org/publication/Bruce97}, cites = {0}, citedby = {1}, } @inproceedings{504285, title = {The Java syntactic extender (JSE)}, author = {Bachrach, Jonthan and Playford, Keith}, year = {2001}, doi = {10.1145/504282.504285}, url = {http://doi.acm.org/10.1145/504282.504285}, tags = {Java}, researchr = {https://researchr.org/publication/504285}, cites = {0}, citedby = {2}, booktitle = {OOPSLA '01: Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications}, address = {New York, NY, USA}, publisher = {ACM}, isbn = {1-58113-335-9}, } @article{HeeringK85, title = {Towards Monolingual Programming Environments}, author = {Jan Heering and Paul Klint}, year = {1985}, doi = {10.1145/3318.3321}, url = {http://doi.acm.org/10.1145/3318.3321}, tags = {meta programming, meta-model, programming, Meta-Environment}, researchr = {https://researchr.org/publication/HeeringK85}, cites = {0}, citedby = {0}, journal = {ACM Transactions on Programming Languages and Systems}, volume = {7}, number = {2}, pages = {183-213}, } @techreport{Visser97-SDF, title = {A Family of Syntax Definition Formalisms}, author = {Eelco Visser}, year = {1997}, month = {August}, tags = {syntax definition, SDF, lexical syntax, scannerless, disambiguation, context-aware, parsing, design, scannerless parsing, ASF+SDF, grammar}, researchr = {https://researchr.org/publication/Visser97-SDF}, cites = {0}, citedby = {2}, institution = {Programming Research Group, University of Amsterdam}, number = {P9706}, } @inproceedings{BuehrerWS05, title = {Using parse tree validation to prevent SQL injection attacks}, author = {Gregory Buehrer and Bruce W. Weide and Paolo A. G. Sivilotti}, year = {2005}, doi = {10.1145/1108473.1108496}, url = {http://doi.acm.org/10.1145/1108473.1108496}, tags = {injection attack, SQL, parsing}, researchr = {https://researchr.org/publication/BuehrerWS05}, cites = {0}, citedby = {1}, pages = {106-113}, booktitle = {Proceedings of the 5th International Workshop on Software Engineering and Middleware, SEM 2005, Lisbon, Portugal, September 5-6, 2005}, editor = {Elisabetta Di Nitto and Amy L. Murphy}, publisher = {ACM}, } @article{NierstraszM95, title = {Research Directions in Software Composition}, author = {Oscar Nierstrasz and Theo Dirk Meijler}, year = {1995}, tags = {composition}, researchr = {https://researchr.org/publication/NierstraszM95}, cites = {0}, citedby = {0}, journal = {ACM Computing Surveys}, volume = {27}, number = {2}, pages = {262-264}, } @inproceedings{WarthSM06, title = {Statically scoped object adaptation with expanders}, author = {Alessandro Warth and Milan Stanojevic and Todd D. Millstein}, year = {2006}, doi = {10.1145/1167473.1167477}, url = {http://doi.acm.org/10.1145/1167473.1167477}, tags = {meta-model, Meta-Environment, meta-objects}, researchr = {https://researchr.org/publication/WarthSM06}, cites = {0}, citedby = {0}, pages = {37-56}, booktitle = {Proceedings of the 21th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2006}, editor = {Peri L. Tarr and William R. Cook}, publisher = {ACM}, isbn = {1-59593-348-4}, } @inproceedings{NystromCM03, title = {Polyglot: An Extensible Compiler Framework for Java}, author = {Nathaniel Nystrom and Michael R. Clarkson and Andrew C. Myers}, year = {2003}, url = {http://link.springer.de/link/service/series/0558/bibs/2622/26220138.htm}, tags = {Java, C++, compiler}, researchr = {https://researchr.org/publication/NystromCM03}, cites = {0}, citedby = {4}, pages = {138-152}, booktitle = {Compiler Construction, 12th International Conference, CC 2003, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2003, Warsaw, Poland, April 7-11, 2003, Proceedings}, editor = {Görel Hedin}, volume = {2622}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-00904-3}, } @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 = {10.1007/978-3-642-00722-4_11}, url = {http://dx.doi.org/10.1007/978-3-642-00722-4_11}, tags = {programming languages, rule-based, attribute grammars, program analysis, etaps, data-flow language, pattern language, generic programming, Stratego/XT, traversal, analysis, data-flow programming, data-flow, graph-rewriting, rules, C++, strategic programming, programming, rewriting, data-flow analysis, Aster, grammar, Stratego}, researchr = {https://researchr.org/publication/KatsSV09}, cites = {36}, citedby = {1}, pages = {142-157}, booktitle = {Compiler Construction, 18th International Conference, CC 2009, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009, York, UK, March 22-29, 2009. Proceedings}, editor = {Oege de Moor and Michael I. Schwartzbach}, volume = {5501}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-642-00721-7}, } @inproceedings{Lumpe08, title = {Growing a Language: The GLooPerspective}, author = {Markus Lumpe}, year = {2008}, doi = {10.1007/978-3-540-78789-1_1}, url = {http://dx.doi.org/10.1007/978-3-540-78789-1_1}, tags = {programming languages, object-oriented programming, meta programming, meta-model, language extension, growing a language, modeling language, language modeling, composition, language design, source-to-source, object-role modeling, programming, subject-oriented programming, abstraction, Meta-Environment, design, extensible language, systematic-approach, feature-oriented programming, open-source, meta-objects, domain-specific language}, researchr = {https://researchr.org/publication/Lumpe08}, cites = {0}, citedby = {0}, pages = {1-19}, booktitle = {Software Composition, 7th International Symposium, SC 2008, Budapest, Hungary, March 29-30, 2008. Proceedings}, editor = {Cesare Pautasso and Éric Tanter}, volume = {4954}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {978-3-540-78788-4}, } @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 = {10.1007/11877028_10}, url = {http://dx.doi.org/10.1007/11877028_10}, tags = {generative programming, programming languages, rule-based, transformation engineering, Java, generic programming, assimilation, graph transformation, Stratego/XT, language engineering, domain-specific language embedding, transformation language, composition, MetaBorg, language design, graph-rewriting, transformation system, language embedding, DSL, programming, abstraction, language composition, rewriting, transformation, Stratego, program transformation, domain-specific language}, researchr = {https://researchr.org/publication/BravenboerGV06}, cites = {0}, citedby = {3}, pages = {297-311}, booktitle = {Generative and Transformational Techniques in Software Engineering, International Summer School, GTTSE 2005, Braga, Portugal, July 4-8, 2005. Revised Papers}, editor = {Ralf Lämmel and João Saraiva and Joost Visser}, volume = {4143}, series = {Lecture Notes in Computer Science}, publisher = {Springer}, isbn = {3-540-45778-X}, } @inproceedings{BravenboerDV07, title = {Preventing injection attacks with syntax embeddings}, author = {Martin Bravenboer and Eelco Dolstra and Eelco Visser}, year = {2007}, doi = {10.1145/1289971.1289975}, url = {http://doi.acm.org/10.1145/1289971.1289975}, tags = {programming languages, syntax embedding, Java, preventing injection attacks, generic programming, injection attack, SDF, XML, embedded software, XML Schema, SQL, security, language embedding, DSL, programming, systematic-approach, ASF+SDF, grammar, query language}, researchr = {https://researchr.org/publication/BravenboerDV07}, cites = {0}, citedby = {4}, pages = {3-12}, booktitle = {Generative Programming and Component Engineering, 6th International Conference, GPCE 2007}, editor = {Charles Consel and Julia L. Lawall}, address = {Salzburg, Austria}, publisher = {ACM}, isbn = {978-1-59593-855-8}, } @article{WhiteHGTGS09, title = {Improving Domain-Specific Language Reuse with Software Product Line Techniques}, author = {Jules White and James H. Hill and Jeffrey G. Gray and Sumant Tambe and Aniruddha S. Gokhale and Douglas C. Schmidt}, year = {2009}, doi = {10.1109/MS.2009.95}, url = {http://doi.ieeecomputersociety.org/10.1109/MS.2009.95}, tags = {DSLsAndPLE, reuse, C++, software product line, product line, domain-specific language}, researchr = {https://researchr.org/publication/WhiteHGTGS09}, cites = {0}, citedby = {0}, journal = {IEEE Software}, volume = {26}, number = {4}, pages = {47-53}, } @inproceedings{Cazzola:2010:DET:1890683.1890689, title = {DSL evolution through composition}, author = {Cazzola, Walter and Poletti, Davide}, year = {2010}, doi = {10.1145/1890683.1890689}, url = {http://doi.acm.org/10.1145/1890683.1890689}, tags = {composition, DSL}, researchr = {https://researchr.org/publication/Cazzola%3A2010%3ADET%3A1890683.1890689}, cites = {0}, citedby = {0}, booktitle = {Proceedings of the 7th Workshop on Reflection, AOP and Meta-Data for Software Evolution}, series = {RAM-SE '10}, address = {New York, NY, USA}, publisher = {ACM}, isbn = {978-1-4503-0536-5}, } @inproceedings{McClureK05, title = {SQL DOM: compile time checking of dynamic SQL statements}, author = {Russell A. McClure and Ingolf H. Krüger}, year = {2005}, doi = {10.1145/1062455.1062487}, url = {http://doi.acm.org/10.1145/1062455.1062487}, tags = {SQL, compiler}, researchr = {https://researchr.org/publication/McClureK05}, cites = {0}, citedby = {2}, pages = {88-96}, booktitle = {27th International Conference on Software Engineering (ICSE 2005), 15-21 May 2005, St. Louis, Missouri, USA}, editor = {Gruia-Catalin Roman and William G. Griswold and Bashar Nuseibeh}, publisher = {ACM}, }