Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!panda!talcott!harvard!seismo!rochester!ritcv!ccice5!ccivax!rb From: rb@ccivax.UUCP (rex ballard) Newsgroups: net.cse Subject: Re: pascal as an intro language Message-ID: <450@ccivax.UUCP> Date: Thu, 6-Mar-86 13:24:40 EST Article-I.D.: ccivax.450 Posted: Thu Mar 6 13:24:40 1986 Date-Received: Mon, 10-Mar-86 00:07:26 EST References: <111@polyob.UUCP> Reply-To: rb@ccivax.UUCP (What's in a name ?) Distribution: net Organization: CCI Telephony Systems Group, Rochester NY Lines: 45 In article <111@polyob.UUCP> hgoldber@polyob.UUCP (A1 harry goldberg ) writes: >am interested in hearing pros and cons about using pascal as the >flanguage to teach introductory programming to freshmen (ug's and grad's As an introdutory language, pascal offers fairly good type checking, and is very strict. At least they won't be "debugging" for syntax errors. Also, good design techniques are generally included with these courses, although Yourdon should also be included. Ideally, a language as structured and strict as pascal should be made interactive (interpreter?) so that students can experiment with smaller modules and build up to a working implementation. This is about the only good thing I can say about BASIC. I've used BASIC to teach 8 to 18 year olds, and the advantages of being able to test a small routine before integrating it into the larger program can be a valuable educational benefit. The important thing to remember about BASIC is to stress structured concepts (gosubs, if then, for next, while do (if available)) before letting the student experiment with goto's. Most students have learned BASIC (and some bad habits) before they get to college. It would be nice if students could be taught Pascal in high school as well. Nuff said about that. In terms of longer program that gives a balanced education, Pascal should be followed by: Assembler - to teach the principles of the actual machine operations. Ideally, this should even include a very general background in how the micro-code interpreter works. This helps the student to understand how the computer works. Forth - Interactive nature and "bottom up implementation" along with several other constraints of the language can lead to some good habits and design techniques. SmallTalk or some other object oriented language - this teaches organizational techniques and principles that can be used in other languages. C - If preceeded by these other languages, the student is able to take advantage of the flexibility of this language more effectively. At this point, if they know the rules and principles, students can break them (sparingly) in C without the compiler shutting down.