[plt-scheme] Re: Paren Paralysis Sufferers Unite

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Fri Oct 16 17:09:57 EDT 2009

Morgan,

the real answer is that SICP got it completely, totally wrong. Lisp,  
Scheme, and related friends have syntax. All off-the-shelf languages  
have syntax, and if you don't know the syntax, the implementation  
reports errors assuming you know the *entire* language. (The problem  
is that in languages like Scheme or Perl, you get many errors reported  
when you *run* the program not before you run. But even then, the  
error message assumes that you know the *entire* language.)

Because this project explicitly recognizes this fact and because the  
people who started it liked Scheme -- they could have liked Pascal, C,  
or Java instead -- they created teaching languages, which approximate  
the chosen language and provide error messages for the small language,  
which is usually easier to grasp than those for the full language.

The person who maintains a lot of this work is super-curmudgeon Robby.

What the other people pointed out to you is that {!@#$} languages have  
the exact same problem as Scheme. They are off the shelf and they  
provide bad error messages. Before you say 'no' reflect on this  
statement. The group respects people a lot more who reflect before  
they shoot, even though we are all from Texas :-)

-- Matthias



Posted on the users mailing list.