HKN Home
HKN Home
UG6 Search
UG6 Search
Registrar's Listing
Registrar
Course Home
Course Home
Help
Help

6.044J/18.423J Computability, Logic, and Programming (Draft Underground Guide Review, January 21, 1997)

The Theory Behind Scheme
(3 0 7)

Lecturer: A. Meyer
Next Term: Not offered
Lecturer's Rating: Meyer 5.4/7.0
Prerequisites: 6.001, 6.042J, Scheme, proofs
Response rate: 9 out of 9
Difficulty: 5.4/7.0
Overall Rating: 4.6/7.0
Term Evaluated: Fall 96

Lecturer's Comments:

The class covers how to make a mathematical model about a programming language, in particular the Scheme language, and then use this to prove theorems about it. It covers computability theory. Many of the proofs are clarified by the use of Scheme programs instead of classical, far-fetched models like Turing Machines. It gives an introduction to basic ideas of Mathematical Logic, in particular, formal proof of polynomial equations and equations between Scheme expressions. Completeness and incompleteness of these equational proof systems.

Every Computer Science professional should understand the theoretical limits of computation as revealed by Computability Theory. Also, the ability to model and prove properties of programs and programming languages promises to be a requisite skill for future leaders in Computer Science in both industry and academia.


Students learned about computability and a mathematical model of Scheme. The class teaches why Scheme was designed the way it was, not just how to use it. One student would have liked to learn something about lambda calculus. Most thought the material was interesting. Eight of the students were Course VI, one was XVIII-C. All were juniors, seniors, or graduate students. Students found the lectures, readings, and problem sets helpful in learning the material.

A. Meyer was described as enthusiastic and interesting; a professor who gets his students excited. His lectures were sometimes fast paced, but he was willing to restate and explain things. Many commented that more organization would have helped. The class notes are good but need to be refined.

There were no recitations or TAs. Many students cited the lack of a TA as a problem.


The problem sets were long and a little confusing, but they made you think. Students spent an average of 8.3 hours, of which 67% was challenging work, 7% was mindless grunge, and 26% was utter frustration. Students who collaborated found it helpful, often necessary. No one used a bible. All the students complained that the problem sets covering the material needed for Quiz 2 were not handed back in time, making it difficult to study. In general, grading of the problem sets and distribution of solutions was extremely late, so students had no idea how they were doing.

There was no textbook, only class notes, which seemed to be written as class went along. Some commented that a textbook might be nice; most commented that better-prepared notes would help.

Grading was 45% problem sets, 20% quizzes (2), 20% final, and 15% participation. The quizzes were closed book; some found that made it difficult since you had to memorize complicated definitions and theorems. The first quiz was fair but the second quiz was long and hard.

Everyone requested getting a TA to do the grading and make solutions. Many requested that the notes be more organized and have fewer errors. Some requested a textbook to reference.


"Get a TA!"


Dated: January 31, 1997
Eta Kappa Nu, MIT