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