🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: net.lang.pascal
Article #239

Re: pascal ass intro. language

#239
From: Vince Manis
Date: Fri, 21 Feb 1986 19:20
40 lines
2944 bytes
Perhaps this discussion belongs in net.cse, but...

It may be reasonable to teach introductory MIT students four languages, but
our students have difficulty with one. At present, our first year sequence
(two terms) covers Pascal and Intel 8080 assembly language (three weeks or so,
for computer organisation concepts, rather than assembly language skill). Even
that is really pushing it. 

As far as I can see, introductory programming courses teach almost nothing
about program design, whether or not one spends the entire time teaching 
program design. The reality seems to be that students ignore all the stuff
you want them to learn, and learn syntax instead. It's only once they've
actually tried to write large programs by hacking, and failed, that they're
ready to listen to our remarks on software design.

If we teach four languages rather than one, all we end up doing is confusing
them on syntax. Until this year, our first year sequence included a unit on
Fortran, which had the effect of causing students to be unable to write
Pascal on the final exam. One might argue that Fortran's semantics are too
similar to those of Pascal, and that one should try a completely different
language, such as Lisp or Prolog. Maybe so, but shouldn't one try to teach
how to do something well before trying to teach completely different
technologies? (Perhaps Lisp is the right introductory language; my
objections are on aesthetic grounds, and therefore not terribly debatable.)

Back to Pascal: this year I switched my second year data structures/program
design course from Pascal to Modula-2. I've been very happy about the
results. But I still believe that at present Pascal is the right
introductory language, not primarily because of its merits (the only
advantage of Pascal over Modula-2--for rank beginners--is the simpler I/O in
Pascal), but because of its acceptance:

     * Pascal is the language used by the U.S. Advanced Placement program;
     * zillions of textbooks;
     * lots of very good implementations, including Turbo Pascal, IBM
       Pascal/VS, and DEC VAX Pascal.

The average introductory student has no longterm commitment to computer
science, so one ought to teach him/her a directly usable skill; that means
teaching a language s/he has heard of.
Technical Details
Message-ID: <171@ubc-cs.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!utcsri!ubc-vision!ubc-cs!manis
References: <109@polyob.UUCP> <247@mit-eddie.UUCP>

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.1 6/24/83; site ubc-cs.UUCP
Path: arc1-ca.pugleaf.net!utzoo!utcsri!ubc-vision!ubc-cs!manis
From: manis@ubc-cs.UUCP (Vince Manis)
Newsgroups: net.lang.pascal,net.college
Subject: Re: pascal ass intro. language
Message-ID: <171@ubc-cs.UUCP>
Date: Fri, 21-Feb-86 14:20:57 EST
Article-I.D.: ubc-cs.171
Posted: Fri Feb 21 14:20:57 1986
Date-Received: Fri, 21-Feb-86 15:43:50 EST
References: <109@polyob.UUCP> <247@mit-eddie.UUCP>
Reply-To: manis@ubc-cs.UUCP (Vince Manis)
Distribution: net
Organization: UBC Department of Computer Science
Lines: 40