Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!seismo!columbia!rutgers!husc6!bu-cs!bzs
From: bzs@bu-cs.BU.EDU (Barry Shein)
Newsgroups: comp.lang.misc
Subject: Re: Teaching object-oriented paradigm to beginners?
Message-ID: <3419@bu-cs.BU.EDU>
Date: Tue, 13-Jan-87 20:59:08 EST
Article-I.D.: bu-cs.3419
Posted: Tue Jan 13 20:59:08 1987
Date-Received: Wed, 14-Jan-87 01:44:39 EST
Organization: Boston U. Comp. Sci.
Lines: 49


From: kens@hpldory.HP.COM (Ken Shrum)
>I don't believe that there is one 'right' programming language to teach
>to beginners.  It's important to remember that, for the vast majority
>of users, software systems are tools and not of interest in their own
>right.

I tend to agree with you, unfortunately we sort of have to pick one
anyhow.

Actually, I am more and more drawn towards the concept of surveying
programming languages in a first 1-year course, possibly getting a
little proficiency in one but touching upon more than just one or two.

There is a (relatively old) textbook by Eliot Organick which was
intended to be a survey of Computer Science in the same spirit as
Halliday and Resnick is a survey of physics, Keeton is a survey of
biology and Sienko and Plane is a survey of (well, inorganic)
chemistry (Thomas' Calculus, Samuelson's Economics, hmm, something
is missing, no?)

The idea was basically to drive the subject matter by "great thoughts
in computer science" and leave the mechanics of programming to more of
a (very important) laboratory procedure. Consequently, you might do
mathematical algorithms in Fortran, some systems in C, string
processing in Snobol and symbolic computation in Lisp (maybe even
parse a toy grammar in Lex and Yacc.) Object oriented programming
would be a fine topic in this day and age and should involve an object
oriented langauge (I like LOOPS but the pragmatics of an intro course
would probably have one use C++ which isn't a bad thing.)

Oh, you won't get very proficient in any right away, but that's the
difference between an academic program and a trade school, the former
is trying to put the questions in your head and then answer them
rather than just make you memorize other people's answers, it's harder
and a bit more circuitous that way, but the extra ground covered is
well worth the effort.

I think something like this could be designed without being impossible
or overly superficial, I would love to see, for example, Donald Knuth
design such a text based upon his Art of Computer Programming (ie.
condense the whole mess back into an introductory student format),
unfortunately he'd probably use Mix or Web or TeX for examples :-),
maybe someone else could come up with something brilliant based on a
format like this.

But perhaps this strays from the topic...maybe not.

	-Barry Shein, Boston University