Re: Fwd(3): Lotto and Good Will Hunting

Shriram Krishnamurthi (
Sat, 18 Apr 1998 23:48:19 -0500 (CDT)

Duncan Chiu sent a message of mine to some of you and posted it on the
drei96 mailing list. I wanted to add two things to his comments:

1. I welcome any comments or questions you might have on what I wrote.

2. Duncan wrote:

> If the following interests you, please let me know. I am going to
> learn the Scheme language at Rice U. this June.

I would not phrase it that way. The point of our program is NOT to
teach a particular programming language. (Indeed, in the course, you
will learn only about 25% of the Scheme language.) Rather, we believe
the key to teaching programming is to focus on program _design_.
Therefore, our course is primarily about how to design programs. In
particular, we have noticed the following conundrum: a programmer is
given a problem statement and a blank sheet of paper. How do you
translate the problem into a solution? Our approach to programming is
designed to address exactly this concern.

On the other hand, we strongly disagree with the folkloric statement
that "all languages are equal". Some languages are far more useful
than others for expressing certain concepts (in a way that can be made
scientifically rigorous, too). For our purposes, we have found no
lanugage better than Scheme. (In particular, we find C++ a
pedagogical abomination.) We are, however, NOT wedded to any one
language; if a better one came along, we would be happy to switch to
it, and indeed, we have shown how our approach translates to other,
Scheme-like languages (such as Java). In particular, this is in
direct contrast to the ETS's approach, which effectively boils down to
picking a language and then designing a curriculum around it, rather
than the other way around.

For a very brief introduction to our program design methodology, see
Algebra is Good Programming

If you want to know why we prefer Scheme to C++, see
Mastering the AP CS Curriculum Without Using C++

For more information on our project, please see
The TeachScheme! Project