[comp.edu] teaching Computer Scientists

bpendlet@esunix.UUCP (02/02/87)

Brad Templeton says,

>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?
>

From my experience I would have to say you are almost correct. In 13 years of
programming I've only been allowed to pick the language a couple of times. And
those times I still had to pick an unsuitable language because the "correct"
language for the job was not available on/for the target machine.

BUT, because I and some of the people working with me, learned programming is 
not dependent on any one language, and learned the good points of a dozen
different languages in our first 2 quarters as CS majors, it made no 
difference.

You see, just as you can write FORTRAN in any language, you can write SNOBOL, 
LISP, APL, and COBOL in any language. You can if you know they exist, if you
know what each is good for, and if you have learned enough to be able to write
the small set of routines needed to imbed the needed features of one language 
in another. 

People who spend too long working in one language, or who never learned more 
than one language, limit their thinking to what can be easily expressed in 
terms of the primitives of that language. 

>-- 
>Brad Templeton, Looking Glass Software Ltd. - Waterloo, Ontario 519/884-7473
>

	Bob Pendleton
-- 
---
               Bob Pendleton
               Evans & Sutherland Computer Corporation

UUCP Address:  {decvax,ucbvax,ihnp4,allegra}!decwrl!esunix!bpendlet
Alternate:     {ihnp4,seismo}!utah-cs!utah-gr!uplherc!esunix!bpendlet

hacking code, hacking code.
sometimes happy, sometimes bored, 
almost lost in a pile of spode.
tell the people "I'm only hacking code."

---
I am solely responsible for what I say.
---