Xref: utzoo comp.lang.misc:4546 comp.edu:3115 Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!cs.utexas.edu!usc!jarthur!uunet!mcsun!sunic!dkuug!iesd!iesd.auc.dk!fischer From: fischer@iesd.auc.dk (Lars P. Fischer) Newsgroups: comp.lang.misc,comp.edu Subject: Re: Abelson & Sussman Message-ID: Date: 21 Mar 90 01:32:32 GMT References: <3793@tukki.jyu.fi> Sender: news@iesd.auc.dk (UseNet News) Organization: Mathematics and Computer Science, University of Aalborg Lines: 44 In-reply-to: sakkinen@tukki.jyu.fi's message of 16 Mar 90 12:09:44 GMT In article <3793@tukki.jyu.fi> sakkinen@tukki.jyu.fi (Markku Sakkinen) writes: >The name is misleading: it should be "... of Lisp Programs". >... it is a strong entrant in the "most biassed >programming textbook ever published" competition. >... >Other programming languages than Lisp are mentioned only in short >footnotes or not at all... A&S is not a book on programming languages. It's a introduction to the concept of programming, of how to think about programming, how to solve problems, etc. It teaches the principles of program construction and algorithm design in an excellent way. The focus of A&S is strongly on design issues. It demonstrates abstract data types, modular design, use of nested definitions, etc. It shows that programming can be regarded as language design. Overall, A&S tries to teach students not only programming (easy), butt *good* programming (hard), and it does a good job in developing in the student a sense of program quality and an approach of thinking about programs. Like Brooks, Knuth vol. 1-3 and a few others, it's one of those books no computing researcher or practitioner should be without. Even wtwolfe might learn something :-). >None of the object-oriented extensions of Lisp are mentioned in the book... No book can cover every subject. Most of the principles teached in A&S are applicable to any language and any style (OO, imp, func, ...). You wouldn't want to teach OOP without demonstrating decomposition and the like, would. As per the language: Scheme is quite a nice language, not unlike Pascal. It's a statically scoped imperative language, it supports nested definitions and so on. It also handles higher-order functions and the like, and doing OO-style programming in Scheme is no harder than using CLOS (or whatever). Scheme is small, easy to grasp, and it lets you experiment with all kinds of programming styles. Nope, I'm not a Lisp hacker. I do all my programming in C and C++. /Lars -- Lars Fischer, fischer@iesd.auc.dk | Q: How does a project get to be one CS Dept., Univ. of Aalborg, DENMARK. | year late? A: One day at a time.