@inproceedings{DBLP:conf/pldi/VogtSK89, author = {Harald Vogt and S. Doaitse Swierstra and Matthijs F. Kuiper}, title = {{Higher-Order Attribute Grammars}}, booktitle = {PLDI}, year = {1989}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/waga/KuiperS90, author = {Matthijs F. Kuiper and S. Doaitse Swierstra}, title = {{Parallel Attribute Evaluation: Structure of Evaluators and Detection of Parallelism}}, booktitle = {WAGA}, year = {1990}, pages = {61-75}, ee = {http://dx.doi.org/10.1007/3-540-53101-7_5}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/waga/1990, editor = {Pierre Deransart and Martin Jourdan}, title = {{Attribute Grammars and their Applications, International Conference WAGA, Paris, Fance, September 19-21, 1990, Proceedings}}, booktitle = {WAGA}, publisher = {Springer}, series = {LNCS}, volume = {461}, year = {1990}, isbn = {3-540-53101-7}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/saga/SwierstraV91, author = {S. Doaitse Swierstra and Harald Vogt}, title = {{Higher Order Attribute Grammars}}, booktitle = {Attribute Grammars, Applications and Systems}, year = {1991}, pages = {256-296}, crossref = {DBLP:conf/saga/1991}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/saga/1991, editor = {Henk Alblas and Borivoj Melichar}, title = {{Attribute Grammars, Applications and Systems, International Summer School SAGA, Prague, Czechoslovakia, June 4-13, 1991, Proceedings}}, booktitle = {Attribute Grammars, Applications and Systems}, publisher = {Springer}, series = {LNCS}, volume = {545}, year = {1991}, isbn = {3-540-54572-7}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/ifip2-4/SwierstraA98, author = {S. Doaitse Swierstra and Pablo R. Azero Alcocer}, title = {{Attribute grammars in the functional style}}, booktitle = {Systems Implementation 2000}, year = {1998}, pages = {180-193}, crossref = {DBLP:conf/ifip2-4/1998}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/ifip2-4/1998, editor = {R. Nigel Horspool}, title = {{Systems Implementation 2000, IFIP TC2 WG2.4 Working Conference on Systems Implementation 2000: Languages, methods and tools, 23-26 February 1998, Berlin, Germay}}, booktitle = {Systems Implementation 2000}, publisher = {Chapman {\&} Hall}, series = {IFIP Conference Proceedings}, volume = {117}, year = {1998}, isbn = {0-412-83530-4}, bibsource = {DBLP, http://dblp.uni-trier.de} } @article{DBLP:journals/informaticaSI/MoorBS00, author = {Oege de Moor and Kevin Backhouse and S. Doaitse Swierstra}, title = {{First-class Attribute Grammars}}, journal = {Informatica (Slovenia)}, volume = {24}, number = {3}, year = {2000}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/icfp/VieraSS09, author = {Marcos Viera and S. Doaitse Swierstra and Wouter Swierstra}, title = {{Attribute grammars fly first-class: how to do aspect oriented programming in Haskell}}, booktitle = {ICFP}, year = {2009}, pages = {245-256}, ee = {http://doi.acm.org/10.1145/1596550.1596586}, crossref = {DBLP:conf/icfp/2009}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/icfp/2009, editor = {Graham Hutton and Andrew P. Tolmach}, title = {Proceeding of the 14th ACM SIGPLAN international conference on Functional programming, ICFP 2009, Edinburgh, Scotland, UK, August 31 - September 2, 2009}, booktitle = {ICFP}, publisher = {ACM}, year = {2009}, isbn = {978-1-60558-332-7}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/waga/JourdanBP90, author = {Martin Jourdan and Carole Le Bellec and Didier Parigot}, title = {{The OLGA Attribute Grammar Description Language: Design, Implementation and Evaluation}}, booktitle = {WAGA}, year = {1990}, pages = {222-237}, ee = {http://dx.doi.org/10.1007/3-540-53101-7_16}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/waga/Augusteijn90, author = {Lex Augusteijn}, title = {{The Elegant Compiler Generator System}}, booktitle = {WAGA}, year = {1990}, pages = {238-254}, ee = {http://dx.doi.org/10.1007/3-540-53101-7_17}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/waga/Knuth90, author = {Donald E. Knuth}, title = {{The Genesis of Attribute Grammars}}, booktitle = {WAGA}, year = {1990}, pages = {1-12}, ee = {http://dx.doi.org/10.1007/3-540-53101-7_1}, bibsource = {DBLP, http://dblp.uni-trier.de} } @article{DBLP:journals/mst/Knuth68, author = {Donald E. Knuth}, title = {{Semantics of Context-Free Languages}}, journal = {Math. Sys. Theory}, volume = {2}, number = {2}, year = {1968}, pages = {127-145}, bibsource = {DBLP, http://dblp.uni-trier.de} } @article{DBLP:journals/entcs/WykBGK08, author = {Eric Van Wyk and Derek Bodin and Jimin Gao and Lijesh Krishnan}, title = {{Silver: an Extensible Attribute Grammar System}}, journal = {Electr. Notes Theor. Comput. Sci.}, volume = {203}, number = {2}, year = {2008}, pages = {103-116}, ee = {http://dx.doi.org/10.1016/j.entcs.2008.03.047}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/oopsla/EkmanH07, author = {Torbj{\"o}rn Ekman and G{\"o}rel Hedin}, title = {{The JastAdd Extensible Java Compiler}}, booktitle = {OOPSLA}, year = {2007}, pages = {1-18}, ee = {http://doi.acm.org/10.1145/1297027.1297029}, crossref = {DBLP:conf/oopsla/2007}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/oopsla/2007, editor = {Richard P. Gabriel and David F. Bacon and Cristina Videira Lopes and Guy L. Steele Jr.}, title = {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}, booktitle = {OOPSLA}, publisher = {ACM}, year = {2007}, isbn = {978-1-59593-786-5}, bibsource = {DBLP, http://dblp.uni-trier.de} } @article{DBLP:journals/acta/Kastens80, author = {Uwe Kastens}, title = {{Ordered Attributed Grammars}}, journal = {Acta Inf.}, volume = {13}, year = {1980}, pages = {229-256}, bibsource = {DBLP, http://dblp.uni-trier.de} } @TECHREPORT{Saraiva99, author = {João Alexandre Baptista Vieira Saraiva and S. Doaitse Swierstra}, title = {{Purely Functional Implementation of Attribute Grammars}}, institution = {Universiteit Utrecht}, year = {1999} } @article{DBLP:journals/toplas/Boyland96, author = {John Boyland}, title = {{Conditional Attribute Grammars}}, journal = {ACM TPLS}, volume = {18}, number = {1}, year = {1996}, pages = {73-108}, ee = {http://doi.acm.org/10.1145/225540.225544}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/afp/DijkstraS04, author = {Atze Dijkstra and S. Doaitse Swierstra}, title = {{Typing Haskell with an Attribute Grammar}}, booktitle = {Advanced Functional Programming}, year = {2004}, pages = {1-72}, ee = {http://dx.doi.org/10.1007/11546382_1}, crossref = {DBLP:conf/afp/2004}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/afp/2004, editor = {Varmo Vene and Tarmo Uustalu}, title = {Advanced Functional Programming, 5th International School, AFP 2004, Tartu, Estonia, August 14-21, 2004, Revised Lectures}, booktitle = {Advanced Functional Programming}, publisher = {Springer}, series = {LNCS}, volume = {3622}, year = {2005}, isbn = {3-540-28540-7}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{1596650, author = {Dijkstra, Atze and Fokker, Jeroen and Swierstra, S. Doaitse}, title = {{The architecture of the Utrecht Haskell compiler}}, booktitle = {Haskell '09: Proceedings of the 2nd ACM SIGPLAN symposium on Haskell}, year = {2009}, isbn = {978-1-60558-508-6}, pages = {93--104}, location = {Edinburgh, Scotland}, doi = {http://doi.acm.org/10.1145/1596638.1596650}, publisher = {ACM}, address = {New York, NY, USA}, } @article{ 10.1109/SCAM.2007.13, author = {Eva Magnusson and Torbjorn Ekman and Gorel Hedin}, title = {{Extending Attribute Grammars with Collection Attributes--Evaluation and Applications}}, journal ={SCAM07}, volume = {0}, year = {2007}, isbn = {0-7695-2880-5}, pages = {69-80}, doi = {http://doi.ieeecomputersociety.org/10.1109/SCAM.2007.13}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, } @inproceedings{512989, author = {Jazayeri, M. and Ogden, W. F. and Rounds, W. C.}, title = {On the complexity of the circularity test for attribute grammars}, booktitle = {POPL '75}, year = {1975}, pages = {119--129}, location = {Palo Alto, California}, doi = {http://doi.acm.org/10.1145/512976.512989}, publisher = {ACM}, address = {New York, NY, USA}, } @MISC{Schrage04proxima, author = {Martijn Michiel Schrage and J. T. Jeuring}, title = {{Proxima - A presentation-oriented editor for structured documents}}, year = {2004} } @inproceedings{jones06, author = {Simon L. {Peyton~Jones} and Dimitrios Vytiniotis and Stephanie Weirich and Geoffrey Washburn}, title = {{Simple unification-based type inference for GADTs}}, booktitle = {ICFP}, year = {2006}, pages = {50-61}, ee = {http://doi.acm.org/10.1145/1159803.1159811}, bibsource = {DBLP, http://dblp.uni-trier.de} } @book{DBLP:books/cu/Appel1998, author = {Andrew W. Appel}, title = {{Modern Compiler Implementation in Java}}, publisher = {Cambridge University Press}, year = {1998}, isbn = {0-521-58388-8}, bibsource = {DBLP, http://dblp.uni-trier.de} } @MISC{Kuiper87usingattribute, author = {M. F. Kuiper and S. Doaitse Swierstra}, title = {{Using Attribute Grammars to Derive Efficient Functional Programs}} } @inproceedings{DBLP:conf/popl/KennedyW76, author = {Ken Kennedy and Scott K. Warren}, title = {{Automatic Generation of Efficient Evaluators for Attribute Grammars}}, booktitle = {POPL}, year = {1976}, pages = {32-49}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/lernet/Swierstra08, author = {S. Doaitse Swierstra}, title = {{Combinator Parsing: A Short Tutorial}}, booktitle = {LerNet ALFA Summer School}, year = {2008}, pages = {252-300}, ee = {http://dx.doi.org/10.1007/978-3-642-03153-3_6}, crossref = {DBLP:conf/lernet/2008}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/lernet/2008, editor = {Ana Bove and Lu\'{\i}s Soares Barbosa and Alberto Pardo and Jorge Sousa Pinto}, title = {Language Engineering and Rigorous Software Development, International LerNet ALFA Summer School 2008, Piriapolis, Uruguay, February 24 - March 1, 2008, Revised Tutorial Lectures}, booktitle = {LerNet ALFA Summer School}, publisher = {Springer}, series = {LNCS}, volume = {5520}, year = {2009}, isbn = {978-3-642-03152-6}, ee = {http://dx.doi.org/10.1007/978-3-642-03153-3}, bibsource = {DBLP, http://dblp.uni-trier.de} } @book{153676, author = {Jones, Neil D. and Gomard, Carsten K. and Sestoft, Peter}, title = {{Partial evaluation and automatic program generation}}, year = {1993}, isbn = {0-13-020249-5}, publisher = {Prentice-Hall, Inc.}, address = {Upper Saddle River, NJ, USA}, } @misc{uuagc, Author={{Universiteit Utrecht}}, Howpublished={\url{http://www.cs.uu.nl/wiki/HUT/AttributeGrammarSystem}}, Title={{Universiteit Utrecht Attribute Grammar System}} } @inproceedings{Middelkoop10gpce, title = {{Iterative Type Inference with Attribute Grammars}}, author = {Arie Middelkoop and Atze Dijkstra and S. Doaitse Swierstra}, year = {2010}, booktitle = {Proceedings of the International Conference on Generative Programming and Component Engineering}, } @INPROCEEDINGS{Leijen:helium, author = {Bastiaan Heeren and Daan Leijen and Arjan van IJzendoorn}, title = {{Helium, for Learning {H}askell}}, booktitle = {{ACM SIGPLAN} Haskell Workshop ({HW'03})}, year = 2003, month = sep, publisher = {ACM Press}, address = {New York}, pages = {62 -- 71}, pubcat = {workshop}, } @MISC{CCO, author = {{Universiteit Utrecht}}, title = {{Mini Projects Compiler Construction}}, Howpublished = {\url{http://www.cs.uu.nl/wiki/bin/view/Cco/MiniProjects}}, year = {2010} } @MISC{ASM, author = {Eric Bruneton}, title = {{ASM {3.0}, a Java bytecode engineering library}}, howpublished = {\url{http://download.forge.objectweb.org/asm/asm-guide.pdf}}, year={2007} } @misc{jtransact, author = {Annette Bieniusa and Arie Middelkoop}, title = {{JTransactifier: transactification of Java programs through annotations}}, howpublished = {\url{http://proglang.informatik.uni-freiburg.de/projects/dstm/}}, year={2009} } @misc{Middelkoop10vis, author = {Arie Middelkoop and Atze Dijkstra and S. Doaitse Swierstra}, title = {{Visit Functions for the Semantics of Programming Languages}}, howpublished = {\url{http://people.cs.uu.nl/ariem/wgt10-visit.pdf}}, year = {2010} } @misc{wgt10journalext, author = {Arie Middelkoop and Atze Dijkstra and S. Doaitse Swierstra}, title = {{Visitor-based Attribute Grammars with Side Effect (Extended Version)}}, howpublished = {\url{http://people.cs.uu.nl/ariem/wgt10-journal.pdf}}, year = {2010} } @inproceedings{DBLP:conf/tools/GagnonH98, author = {Etienne M. Gagnon and Laurie J. Hendren}, title = {{SableCC, an Object-Oriented Compiler Framework}}, booktitle = {TOOLS (26)}, year = {1998}, pages = {140-154}, ee = {http://doi.ieeecomputersociety.org/10.1109/TOOLS.1998.711009}, crossref = {DBLP:conf/tools/26-1998}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/tools/26-1998, title = {TOOLS 1998: 26th International Conference on Technology of Object-Oriented Languages and Systems, 3-7 August 1998, Santa Barbara, CA, USA}, booktitle = {TOOLS 1998}, publisher = {IEEE Computer Society}, year = {1998}, isbn = {0-8186-8482-8}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/sigcse/Roberts01, author = {Eric Roberts}, title = {{An overview of MiniJava}}, booktitle = {SIGCSE}, year = {2001}, pages = {1-5}, ee = {http://doi.acm.org/10.1145/364447.364525}, crossref = {DBLP:conf/sigcse/2001}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/sigcse/2001, editor = {Henry MacKay Walker and Ren{\'e}e A. McCauley and Judith L. Gersting and Ingrid Russell}, title = {Proceedings of the 32rd SIGCSE Technical Symposium on Computer Science Education, 2001, Charlotte, North Carolina, USA, 2001}, booktitle = {SIGCSE}, publisher = {ACM}, year = {2001}, isbn = {1-58113-329-4}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{674267, author = {Palsberg, Jens and Jay, C. Barry}, title = {{The Essence of the Visitor Pattern}}, booktitle = {COMPSAC '98: Proceedings of the 22nd International Computer Software and Applications Conference}, year = {1998}, isbn = {0-8186-8585-9}, pages = {9--15}, publisher = {IEEE Computer Society}, address = {Washington, DC, USA}, } @inproceedings{DBLP:conf/oopsla/OliveiraWG08, author = {Bruno C. D. S. Oliveira and Meng Wang and Jeremy Gibbons}, title = {The visitor pattern as a reusable, generic, type-safe component}, booktitle = {OOPSLA}, year = {2008}, pages = {439-456}, ee = {http://doi.acm.org/10.1145/1449764.1449799}, crossref = {DBLP:conf/oopsla/2008}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/oopsla/2008, editor = {Gail E. Harris}, title = {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}, booktitle = {OOPSLA}, publisher = {ACM}, year = {2008}, isbn = {978-1-60558-215-3}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/ecoop/GammaHJV93, author = {Erich Gamma and Richard Helm and Ralph E. Johnson and John M. Vlissides}, title = {{Design Patterns: Abstraction and Reuse of Object-Oriented Design}}, booktitle = {ECOOP}, year = {1993}, pages = {406-431}, ee = {http://link.springer.de/link/service/series/0558/bibs/0707/07070406.htm}, crossref = {DBLP:conf/ecoop/1993}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/ecoop/1993, editor = {Oscar Nierstrasz}, title = {ECOOP'93 - Object-Oriented Programming, 7th European Conference, Kaiserslautern, Germany, July 26-30, 1993, Proceedings}, booktitle = {ECOOP}, publisher = {Springer}, series = {Lecture Notes in Computer Science}, volume = {707}, year = {1993}, isbn = {3-540-57120-5}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/oopsla/ChambersL94, author = {Craig Chambers and Gary T. Leavens}, title = {{Typechecking and Modules for Multi-Methods}}, booktitle = {OOPSLA}, year = {1994}, pages = {1-15}, bibsource = {DBLP, http://dblp.uni-trier.de} } @inproceedings{DBLP:conf/waga/Waite90, author = {William M. Waite}, title = {{Use of Attribute Grammars in Compiler Construction}}, booktitle = {WAGA}, year = {1990}, pages = {255-265}, ee = {http://dx.doi.org/10.1007/3-540-53101-7_18}, crossref = {DBLP:conf/waga/1990}, bibsource = {DBLP, http://dblp.uni-trier.de} } @proceedings{DBLP:conf/waga/1990, editor = {Pierre Deransart and Martin Jourdan}, title = {Attribute Grammars and their Applications, International Conference WAGA, Paris, Fance, September 19-21, 1990, Proceedings}, booktitle = {WAGA}, publisher = {Springer}, series = {Lecture Notes in Computer Science}, volume = {461}, year = {1990}, isbn = {3-540-53101-7}, bibsource = {DBLP, http://dblp.uni-trier.de} } @article{629079, author = {Klaiber, A. and Gokhale, M.}, title = {{Parallel Evaluation of Attribute Grammars}}, journal = {IEEE Trans. Parallel Distrib. Syst.}, volume = {3}, number = {2}, year = {1992}, issn = {1045-9219}, pages = {206--220}, doi = {http://dx.doi.org/10.1109/71.127261}, publisher = {IEEE Press}, address = {Piscataway, NJ, USA}, } @inproceedings{Heidegger10, author = {Philip Heidegger and Annette Bieniusa and Peter Thiemann}, title = {{DOM Transactions for Testing JavaScript}}, booktitle = {TAICPART}, year = {2010}, pages = {(to appear)} }