Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!looking!brad From: brad@looking.UUCP Newsgroups: comp.edu Subject: Re: How to teach computers Message-ID: <735@looking.UUCP> Date: Thu, 29-Jan-87 13:20:07 EST Article-I.D.: looking.735 Posted: Thu Jan 29 13:20:07 1987 Date-Received: Fri, 30-Jan-87 03:25:51 EST References: <882@arthur.cs.purdue.edu> Reply-To: brad@looking.UUCP (Brad Templeton) Distribution: na Organization: Looking Glass Software Ltd. Waterloo, Ontario Lines: 37 In article <882@arthur.cs.purdue.edu> tlh@mordred.cs.purdue.edu (Thomas L. Hausmann) writes: > > I am only speaking from my own experience, but I feel that being exposed > to unconventional languages in an undergraduate programming languages > course IS the way to go. It breaks undergraduates out of their Pascal > (and gads BASIC) mindsets and introduces the fact that first problems > are solved then a choice is made in what language to implement the > solutions. I think this is the right attitude -- that you attack the problem first -- but I don't think this "algorithm first, then choose language" approach is used much in the real world. 99 times out of 100, the language chosen for a project will be one of a) The language best known by the programmer b) The official language designated by the company c) The language of the course (for students) d) The language the boss likes best e) The language you happen to have a good compiler for (in Unix, everything is done in C, so you do it in C even if that would not be the perfect choice) None of these considerations have much to do with the algorithm. How often have you coded something up in C when a language like snobol, apl, lisp or even Basic would have gotten the job done faster? The language is chosen second in the real world only when the project is large enough to justify the cost of re-familiarizing everybody with a more familiar language. I even suspect that the most common 'second language' for a project is assembler. Small portions of a project will get coded in assembler from time to time for speed considerations. -- Brad Templeton, Looking Glass Software Ltd. - Waterloo, Ontario 519/884-7473