Path: utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!wuarchive!zaphod.mps.ohio-state.edu!think!snorkelwacker!bloom-beacon!athena.mit.edu!warlord From: warlord@athena.mit.edu (Derek Atkins) Newsgroups: comp.edu Subject: Re: Abelson & Sussman Message-ID: <1990Mar21.045513.6255@athena.mit.edu> Date: 21 Mar 90 04:55:13 GMT References: <3793@tukki.jyu.fi> others Sender: news@athena.mit.edu (News system) Organization: Massachusetts Institute of Technology Lines: 49 I am a student at MIT, and I just took the Computer Science course entitled 'Structure and Interpretation of Computer Programs,' taught by Gerrald Sussman. I am appauled at the hulla-baloo over the book of the same title... The arguments put forth show little insight into the book's purpose.. Granted, the book has its faults, as does K & R's book on C. None-the-less, before you go on attacking a book, you should READ it, not quote it... Take a look at 6.001, the 'Structure and Interpretation of Computer Programs', MIT's introductory compuiter science course: The course is there to teach how to understand and create structured computer programs, and, in my opinion, has done well. What you are complaining about, is the use of Scheme. Well, in teaching structured programming, one must choose a medium with which to program, and the medium chosen was Scheme. This, however, was not a bad choice. It you read the book, you would have seen, for the most part, what was taught in the course, but not how, nor how long, each topic was covered. For example, we spent about three weeks on the meta-circular evaluator. This was done to teach how an interpreter works, in the general sense. Granted, it WAS taught in scheme, but we were told that "these things" applied to programming in general.... Another reason that Scheme was a good choice: It's a relatively easy language to learn most of the primitives in.. So, we could easily get to the rest of the course. Try doing that with common LISP or C (or pascal, or....) But, don't forget my original argument, and the purpose of the course: To teach the 'Structure and Interpretation of Computer Programs.' When you teach someone to drive, you are told to stay on the right (or left) hand side of the road (depending on the country)... However, not until you are actually TAKEN DRIVING in a car do you actually experience it.. Now, does it matter what TYPE of car you are taken in? Well, it might make a difference between manual and automatic transmition, but beyond that a car is a car... Each has its ideosyncrasies: i.e., handling, acceleration, braking, etc., but each drives the same... You just choose the car that is the easiest to use for what you are trying to teach (or learn). ***Well, the SAME APPLIES here... It doesn't really matter which language is used, for they all (for the most part) are the same... You just choose the language that best fits what you are trying to teach... 'The Structure and Interpretation of Computer Programs.' BTW: The book mentions that scheme was chosen for ease of use and primities, and that many other languages are available for general programming.... Derek Atkins -- MIT '93 -- Electrical Engineering --warlord@athena.mit.edu ARPA ...!mit-eddie!mit-athena!warlord UUCP --s20069@mitvma BITNET