G711 '05

General Information

Instructors Matthias Felleisen, Karl Lieberherr;   TA: Alex Friedman (a 711 alum)

Class The class meets on Tuesdays from 6pm to 9pm, starting September 13 and ending on December 13. Initially the class will meet in 210 Shillman; as soon as possible, we will relocate to WVH 366.

Lab In addition to lectures, the class also meets for three in-lab sessions on basic program design techniques. Karl Lieberherr has prepared the lab materials and will conduct the sessions in WVH 212 on Thursdays from 4:30 to 5:30pm.

Thematic Organization The course consists of two parts. The first part will lay a small, general foundation. The second will cover four special topics, based on these foundations. See the Schedule for details.

Grades PhD students don't go to school to get grades. Try again.

Weekly Homework Assignment To reinforce the technical material, you will implement a series of interpreters, type checkers, and other programming language-related programs. We may grade all of the problems on any given problem set or select some of special value without giving credit to the remaining ones. Doing work will teach you a lot no matter what we do. If you wish to discuss the feedback on some problem set, see the TA; if you're unhappy with the discussion, see one of the instructors. (Warning: the first instructor is know to agree with Alex.) If you wish to get feedback on an ungraded problem, see the TA or one of the instructors.

Choice of Programming Language You may choose whatever language you want as long as it is Scheme under DrScheme v299.200 (installed in Windows and Unix labs). We may use the EoPL variant but stay tuned for further announcements.

Mini-Project During the first part of the course, you should collect project ideas. In the last week of the first part, you will turn in a one-page memo on your chosen idea. The memo should describe the theme, list the most relevant background literature (between one and five papers), and specify a goal.

Here are some general suggestions on how/where to look for a Mini-Project:

  • an extension of a weekly homework assignment with a novel construct
  • the translation of an interpreter into a semantics (and vice versa)
  • the implementation of a model from a paper
  • the development of a semantics for a language construct in a paper
  • the design and implementation of a special-purpose language (dsl)
If you have any doubts, see the course instructors for constraints or ideas but do so early so that you don't get under time pressure.

You will present the results of your Mini-Project during the lecture time of the last week in the semester. Your presentation should be an extension of your memo with your results translated into an oral format. It should last between 10 and 15 minutes.

Exams We may have some. Perhaps not. See grades above.

Grades Okay, okay. We will assign grades because some people will never understand that a PhD is all about "wanting to learn". Warning: the first instructor is know to use the entire range of letters, from A to Z, for grades.

last updated on Tue Jun 9 22:21:18 EDT 2009generated with PLT Scheme