Home
Education Page
Description
Schedule
Literature
Taxonomy
Slides
Center
Master Program
Center
Home
Courses
People
Projects
Page
Edit Page
Rename Page
Attach File
Printable
Wiki Source
More ...
Web
Recent Changes
Notify Service
News
Page Index
Search
More ...
Wiki
About TWiki
Text Formatting
Registration
Change Password
Reset Password
Users
Groups
Log In
or
Register
Generation And Configuration Literature
Sgc04
See the [[Taxonomy of Generation and Configuration Approaches]] ------------------------------------------------------------------------------------ -------++ Table of Contents %TOC% ------------------------------------------------------------------------------------ -------++ People * [[http://www.ida.liu.se/~uweas/][Uwe Aßmann]] ([[http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/a/A=szlig=mann:Uwe.html][DBLP]]) * [[http://www.swen.uwaterloo.ca/~kczarnec/][Krzysztof Czarnecki]] ([[http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/c/Czarnecki:Krzysztof.html][DBLP]]) * [[http://web.engr.oregonstate.edu/~erwig/][Martin Erwig]] * [[http://ase.arc.nasa.gov/people/fischer/][Bernd Fischer]] ([[http://136.199.54.185/%7Eley/db/indices/a-tree/f/Fischer%3ABernd.html][DBLP]]) * [[http://homepages.cwi.nl/~ralf/][Ralf Lämmel]] ([[http://136.199.54.185/%7Eley/db/indices/a-tree/l/L=auml=mmel%3ARalf.html][DBLP]]) * [[http://www.cs.ubc.ca/~gregor/][Gregor Kiczales]] ([[http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/k/Kiczales:Gregor.html][DBLP]]) * [[http://www.dcs.gla.ac.uk/~simonpj/][Simon Peyton Jones]] ([[http://136.199.54.185/%7Eley/db/indices/a-tree/j/Jones%3ASimon_L=_Peyton.html][DBLP]]) * [[http://www.cse.ogi.edu/~sheard/sheard.html][Tim Sheard]] ([[http://136.199.54.185/%7Eley/db/indices/a-tree/s/Sheard%3ATim.html][DBLP]]) * [[http://www.cc.gatech.edu/~yannis/][Yannis Smaragdakis]] ([[][DBLP]]) * [[http://www.cs.rice.edu/~taha/][Walid Taha]] ([[http://136.199.54.185/%7Eley/db/indices/a-tree/t/Taha%3AWalid.html][DBLP]]) * [[Visser.WebHome][Eelco Visser]] ([[http://136.199.54.185/%7Eley/db/indices/a-tree/v/Visser%3aEelco.html][DBLP]]) * [[http://wiki.di.uminho.pt/twiki/bin/view/Joost][Joost Visser]] ([[http://136.199.54.185/%7Eley/db/indices/a-tree/v/Visser%3AJoost.html][DBLP]]) <!-- * [[][Matteo Frigo]] ([[][DBLP]]) * [[][Don Batory]] ([[][DBLP]]) * [[][Todd Veldhuizen]] ([[][DBLP]]) * [[][]] ([[][DBLP]]) * [[][]] ([[][DBLP]]) * [[][]] ([[][DBLP]]) * [[][]] ([[][DBLP]]) * [[][]] ([[][DBLP]]) --> ------------------------------------------------------------------------------------ ---------------------------------++ Software Variability ---------+++ Feature models ---------+++ Software product lines * [[http://softwareproductlines.com][softwareproductlines.com]] * [[http://www.softwarefactories.com][softwarefactories.com]] * Don Batory, Clay Johnson, Bob MacDonald, and Dale von Heeder, [[ftp://ftp.cs.utexas.edu/pub/predator/fsatsRevised.pdf][Achieving Extensibility Through Product-Lines and Domain-Specific Languages: A Case Study]]. In ACM Transactions on Software Engineering and Methodology, Vol. 11#2, April 2002. * Don Batory, Rich Cardone, and Yannis Smaragdakis. [[ftp://ftp.cs.utexas.edu/pub/predator/frameworks.pdf][Object-Oriented Frameworks and Product-Lines]]. In 1st Software Product-Line Conference, Denver, Colorado, August 1999. * Don Batory. [[ftp://ftp.cs.utexas.edu/pub/predator/stja.pdf][Product-Line Architectures]]. Invited presentation, Smalltalk und Java in Industrie and Ausbildung, Erfurt, Germany, October 1998. ---------+++ Feature-oriented programming ------------------------------------------------------------------------------------ ---------------------------------++ Component Frameworks and Composition Mechanisms ---------+++ Component Systems * Java Beans * CORBA * COM ---------+++ Architecture Systems * Unicon * ACME * Darwin ---------+++ * Composition filters ---------+++ Invasive Software Composition * Compost ------------------------------------------------------------------------------------ ---------------------------------++ Domain- and Model-Driven Approaches * [[http://oopsla.acm.org/oopsla2003/files/ddd.html][Domain-Driven Development]] (OOPSLA 2003 track) ---------+++ Model-driven architecture ------------------------------------------------------------------------------------ ---------------------------------++ Domain-Specific Languages and Generators * [[http://www.google.nl/search?q=Domain+Specific+Program+Generation&ie=UTF-8&hl=nl&btnG=Google+zoeken&lr=][Google: Domain Specific Program Generation]] * [[http://infosun.fmi.uni-passau.de/cl/papers/DSPG2004.html][Domain-Specific Program Generation]] * [[http://web.engr.oregonstate.edu/~erwig/ocean/][Program Generation for Ocean Modeling]] * [[http://www.ece.cmu.edu/~spiral/special-issue.html][Proceedings of the IEEE Special Issue on Program Generation, Optimization, and Platform Adaptation]] * [[http://www.informatik.uni-freiburg.de/~softech/teaching/ss02/program-generation/literature.en.html][Tools and Methods for Automatic Program Generation: Literature & Topics]] (Freiburg seminar) * http://codegeneration.net/ ---------+++ Program Synthesis * [[http://ase.arc.nasa.gov/autobayes/][AutoBayes]] * Bernd Fischer, Johann Schumann. [[http://ase.arc.nasa.gov/people/fischer/papers/jfp-01.html][Generating Data Analysis Programs from Statistical Models]] Journal of Functional Programming, Vol. 13, No. 3, May 2003, pp. 483-508. * FFTW ---------+++ Generative programming * [[http://www-ia.tu-ilmenau.de/~czarn/gmcl/][The Generative Matrix Computation Library]] * Krzysztof Czarnecki and Ulrich W. Eisenecker: "[[http://www.generative-programming.org/][Generative Programming - Methods, Tools, and Applications]]". Addison-Wesley, June 2000. ---------+++ Application Generators * [[http://www.javelinsoft.com/jgenerator/][JGenerator]] * [[http://www.softwarereality.com/programming/codegen_forum.jsp][Generate Enterprise Applications With JGenerator]] by [[http://www.DinoFancellu.com][Dino Fancellu]] ---------+++ The GenVoca Model and P++ * Don Batory and Sean O'Malley. [[ftp://ftp.cs.utexas.edu/pub/predator/tosem-92.pdf][The Design and Implementation of Hierarchical Software Systems With Reusable Components]]. In ACM Transactions on Software Engineering and Methodology, 1992. * Vivek Singhal and Don Batory. [[ftp://ftp.cs.utexas.edu/pub/predator/wisr-93-p++.pdf][P++: A Language for Large-Scale Reusable Software Components]]. In Proceedings of the 6th Annual Workshop on Software Reuse, Owego, New York, November 1993. * Don Batory, Vivek Singhal, Jeff Thomas, Sankar Dasari, Bart Geraci, and Marty Sirkin. [[ftp://ftp.cs.utexas.edu/pub/predator/ieee-sw-94.pdf][The GenVoca Model of Software-System Generators]]. In IEEE Software, September 1994. ---------+++ Active libraries and domain-specific optimization * Broadway * Broadway: A Compiler for Exploiting the Domain-Specific Semantics of Software Libraries, Calvin Lin (U. Texas) and Samuel Z. Guyer (U. Texas) * Techniques for Matlab compilation, Luiz DeRose (IBM Research) and George Almasi (IBM Research) * Domain Specific Compiler Techniques, Franz Franchetti, Stefan Kral, Juergen Lorenz, Christoph W. Ueberhuber (all University of Technology, Vienna) * Telescoping Languages, A System for Automatic Generation of Domain Languages, Ken Kennedy, Bradley Broom, Arun Chauhan, Rob Fowler, Chuck Koelbel, Cheryl McCosh, and John Mellor-Crummey (all Rice University) ---------+++ Attribute Programming * [[http://xdoclet.sourceforge.net/xdoclet/index.html][XDocLet]] ---------+++ Intentional Programming * [[http://codegeneration.net/tiki-read_article.php?articleId=61][Interview with Charles Simonyi]] ----------+++ Extensible Languages * http://www.third-bit.com/~gvwilson/xmlprog.html ; extensible abstract syntax * http://www.paulgraham.com/onlisp.html ; extension via macros and language embedding ------------------------------------------------------------------------------------ ---------------------------------++ Interpreters and Partial Evaluation ---------+++ Partial evaluators * [[http://compose.labri.fr/prototypes/tempo/][Tempo Specializer]] - A Partial Evaluator for C * [[http://www.cs.washington.edu/research/projects/unisw/DynComp/www/][DyC]] - The UW Dynamic Compilation Project * [[http://www.pdos.lcs.mit.edu/~engler/pldi96-abstract.html][`C: high-level dynamic code generation]] ---------+++ Template meta-programming * Template Haskell * Tim Sheard and Simon L. Peyton Jones. [[http://doi.acm.org/10.1145/636517.636528][Template meta-programming for Haskell]]. SIGPLAN Notices 37(12): 60-75 (2002) * MetaAspectJ * C++ templates ---------+++ Multi-stage programming * [[http://www.cs.rice.edu/~taha/MSP/][Multi-stage Programming (MSP)]] * Walid Taha. [[http://www.cs.rice.edu/~taha/publications.html][A Gentle Introduction to Multi-stage Programming]]. DSPG'04 * [[http://www.cse.ogi.edu/PacSoft/projects/metaml/][MetaML]] * Walid Taha and Tim Sheard. [[http://dx.doi.org/10.1016/S0304-3975(00)00053-0][MetaML and multi-stage programming with explicit annotations]]. Theor. Comput. Sci. 248(1-2): 211-242 (2000) * Tim Sheard. [[http://link.springer.de/link/service/series/0558/bibs/2196/21960002.htm][Accomplishments and Research Challenges in Meta-programming]]. SAIG 2001: 2-44 * [[http://www.metaocaml.org/][MetaOCaml]] ------------------------------------------------------------------------------------ ---------------------------------++ Separation of Concerns ---------+++ Adaptive programming * Demeter ---------+++ Aspect-oriented programming * AspectJ: aspect language on top of Java * Splice: aspects with data-flow analysis * Inject/J: weaving scripts ---------+++ Subject-Oriented Programming * [[http://www.research.ibm.com/people/h/harrisn/][William H. Harrison]], Harold L. Ossher, Peri L. Tarr. [[http://domino.watson.ibm.com/library/cyberdig.nsf/1e4115aea78b6e7c85256b360066f0d4/2a4097e93456d0cf85256ca9006dac29?OpenDocument&Highlight=0,RC22685.][Asymmetrically vs. Symmetrically Organized Paradigms for Software Composition]] ---------+++ Hyperspace Programming * HyperJ ---------+++ Strategic programming * [[http://www.stratego-language.org][Stratego]] * [[http://www.cs.vu.nl/Strafunski/][Strafunski]] * [[http://www.jjforester.org/][JJForester]] -- Visitor combinators * Joost Visser. Visitor Combination and Traversal Control. OOPSLA 2001: 270-282 * Tobias Kuipers and Joost Visser. [[http://dx.doi.org/10.1016/S0167-6423(02)00108-9][Object-oriented tree traversal with JJForester]]. Sci. Comput. Program. 47(1): 59-87 (2003) * Scrap your boilerplate * Ralf Lämmel and Simon L. Peyton Jones. [[http://doi.acm.org/10.1145/640136.604179][Scrap your boilerplate: a practical design pattern for generic programming.]] TLDI 2003: 26-37 ---------+++ Generic programming * Polytypic programming * Generic Haskell ------------------------------------------------------------------------------------ ---------------------------------++ Program Transformation * Invasive software composition * Optimization * Instrumentation