CAS 761: Generative Programming (Winter 2024)

CAS 761: Generative Programming (Winter 2024)

Class: Monday, Thursday 13:30-15:00, usual CAS grad room.

The course will cover, through discussion and readings of important
papers in the area, the related topics of generative programming,
Domain Specific Languages, generic programming and
program families. 60% of the mark will be given for leading class
discussion of each assigned paper, and 40% on a small project due
at the end of the course.

In more detail about the papers:

  • Before the class where the paper (or part thereof) will be discussed,
    you need to hand in a 1-page (recto-verso, 10 or 11pt font, narrow
    margins) ‘summary’, comprised of:

    1. Summary of the paper. In your own words, the topics that the paper
      talks about. You can quote from the paper (make it clear when you do).
    2. ‘Take home message’: what you think that the author’s message is.
      What you think the author wants you to remember from the paper.
      (Can often be quite separate from the summary)
    3. What you learned: Things you learned from the paper that were there,
      but not really the main points. More like a side effect.
    4. Open questions: what is covered in the paper that you still don’t
      quite understand. Questions on ‘what next’.
    5. Relevance to research: did you learn something from this paper that
      can be applied in your research, or otherwise has relevance.
  • Leading discussion: you are supposed to act as both moderator and
    instigator of discussion. Use your own summary as a jumping off point.
    Go through everyone in the class and ask specific questions.

Papers that will be presented:

Papers that may be picked from. The first four are manditory.

Note that some of the links above are to the author’s private copy of the
paper, and may not represent the final typesetting of the article by the
publisher. Links to the published version will be added too, as time

In previous years, the following papers were also read, because several
people in the class were doing related research.

Also useful is this glossary
of terminology around generative programming.

Read More

Leave a Reply

Your email address will not be published. Required fields are marked *