Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!mordor!sri-spam!sri-unix!quintus!pds From: pds@quintus.UUCP (Peter Schachte) Newsgroups: comp.lang.misc Subject: Re: : First Languages Message-ID: <725@sandino.quintus.UUCP> Date: 3 Mar 88 18:56:46 GMT References: <1016@its63b.ed.ac.uk> Organization: Quintus Computer Systems, Mountain View, CA Lines: 34 Keywords: ML Summary: Knowing HOW to program doesn't necessarily mean you'll learn a new language very quickly. In article <1016@its63b.ed.ac.uk>, cstjc@its63b.ed.ac.uk (A Cunnigham) writes: > But if you know HOW TO PROGRAM then it doesn't matter if you know C ( or any > other language for that matter ). All you need is the manual and a language > definition. To take you out of context, this isn't really true. If you take a skilled 20 year veteran assembly language programmer and give hime an ML or Prolog or Smalltalk manual and interpreter, it'll probably take him quite a while to get to the point where he can program comfortably in any of those languages. There are important (necessary!) concepts that he hasn't had to face (inheritance, backtracking, unification, recursion). It also works the other way. If you take a really good ML programmer that has never seen anything so low-level as Pascal, and give him an assembler and manuals, it'll be a while before he can make use of it. I still believe it is a good idea to teach a relatively pure language as a first language, but I don't think you can really get away without teaching a broad spectrum of languages. There are algorithimic issues that you just don't see in ML or Prolog (e.g., algorithms that rely on destructive operations). And as someone who has been struggling to become comfortable with C, let me add that if you can teach the specific languages that the programmer is going to need in the outside world, so much the better. There are two separate tasks: teaching programming TECHNIQUES, and teaching programming LANGUAGES. I think the former is much more important, and if it can be done more easily in a pure langauge (which I believe is true), then it should be. It'll be easier for a graduate to later pick up a language than a technique or discipline. But better he should have BOTH when he graduates. -- -Peter Schachte pds@quintus.uucp ...!sun!quintus!pds