home *** CD-ROM | disk | FTP | other *** search
- Xref: sparky comp.edu:1417 comp.lang.fortran:3296 comp.lang.misc:2816 comp.arch:9101 sci.math:10728
- Path: sparky!uunet!olivea!hal.com!decwrl!purdue!mentor.cc.purdue.edu!pop.stat.purdue.edu!hrubin
- From: hrubin@pop.stat.purdue.edu (Herman Rubin)
- Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc,comp.arch,sci.math
- Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
- Message-ID: <BtuqH5.G0K@mentor.cc.purdue.edu>
- Date: 31 Aug 92 14:19:53 GMT
- References: <BtpAIn.EE5@mentor.cc.purdue.edu> <34742@cbmvax.commodore.com> <1992Aug31.133811.3626@crd.ge.com>
- Sender: news@mentor.cc.purdue.edu (USENET News)
- Organization: Purdue University Statistics Department
- Lines: 51
-
- In article <1992Aug31.133811.3626@crd.ge.com> davidsen@crd.ge.com (bill davidsen) writes:
- >In article <34742@cbmvax.commodore.com>, jesup@cbmvax.commodore.com (Randell Jesup) writes:
-
- >| I think whoever wrote that last paragraph is quite correct. One
- >| should also remember that scientists are programmers of necessity: they
- >| program because they have to, not because they're good at it or (generally)
- >| like to do it. This certainly doesn't improve the quality of the code,
- >| let alone the maintainability...
-
- > The problem as I see it is that too many scientists and engineers
- >think that because they can write working code they don't need (or are)
- >programmers. Most people can learn to play the paino, but would agree
- >that they are not professional quality, even the "background music in a
- >piano bar" professional quality. Yet they think that programming
- >somehow requires less training, practice, and dare I say it, *talent*
- >than music.
-
- > No optimizer will ever replace using the right algorithm to solve the
- >problem, no programming tool will ever generate meaningful names, no
- >automated indenter or pretty-printer will ever generate useful comments
- >or truly readable code. To do this even competently is a skill which
- >conspicuously eludes most people who don't write code for a living, and
- >to do this with consumate skill requires training, practice, and a
- >natural talent given to only a few people.
-
- But noone who only knows programming and not the mathematics involved can
- produce the right algorithm, and nobody who does not know the machine
- vagaries and even machine instructions not in the HLLs can do the
- necessary machine-dependent choices. And those who design the hardware
- need to understand these complexities to provide the tools to do the
- job efficiently.
-
- Also, the person with the problem, and the person doing the mathematical
- analysis, are usually in possession of quite a bit of information which
- can be used to produce better and faster code. This information is not
- known by the compiler writers and language designers, or if known, is
- discarded. Almost 30 years ago, I was informed by one of the IBM
- scientific people that, well before the design of the 360 was firm,
- they complained about the lack of communication between the integer
- and floating units. Now at that time, it would have been possible
- to handle the problem. Nothing was done.
-
- Current hardware and software design is dominated by the view that
- integer registers should not be required to do good fast arithmetic
- on anything longer than an address, and that floating-point arithmetic,
- of the accuracy provided, is adequate for number-crunching.
- --
- Herman Rubin, Dept. of Statistics, Purdue Univ., West Lafayette IN47907-1399
- Phone: (317)494-6054
- hrubin@pop.stat.purdue.edu (Internet, bitnet)
- {purdue,pur-ee}!pop.stat!hrubin(UUCP)
-