home *** CD-ROM | disk | FTP | other *** search
- Xref: sparky comp.edu:1617 comp.lang.misc:3010
- Newsgroups: comp.edu,comp.lang.misc
- Path: sparky!uunet!spool.mu.edu!sdd.hp.com!news.cs.indiana.edu!lynx!nmsu.edu!dante!dclason
- From: dclason@dante.nmsu.edu (Dennis Clason)
- Subject: Re: Programmers
- Message-ID: <1992Sep10.210803.5131@nmsu.edu>
- Summary: Syntactic correctness isn't necessarily idiomatic correctness.
- Sender: usenet@nmsu.edu
- Organization: New Mexico State University, Las Cruces, NM
- References: <BuBBoJ.un@rice.edu> <1992Sep10.043815.4175@linus.mitre.org>
- Date: Thu, 10 Sep 1992 21:08:03 GMT
- Lines: 31
-
- In article <BuBBoJ.un@rice.edu> sabry@rice.edu (Amr Sabry) writes:
- >Based on courses here at Rice University, here is a minimum list of
- >*concepts* that a real programmer should know:
- >
- >A person that understands the above concepts can design or implement
- >any programming language. Furthermore, they can code an algorithm in
- >any existing programming language efficiently. Finally, learning any
- >new language amounts essentially to learning a new syntax.
- >
- In the narrow sense of syntactic correctness, I'll agree with
- your last assertion. I take issue with the claim immediately
- preceding it. Users who don't understand the primitives in a
- language are liable to overuse (and even invent) inefficient constructs.
- I've seen this happen many times when programmers whose exposure has
- been limited to procedural languages (e.g. PL/I) are exposed to a
- nonprocedural language with similar syntax (i.e., SAS). These
- programmers then proceed to reinvent the wheel. I saw one case where
- the programmer went through several tortuous steps to do a simple
- linear regression. All beautiful PL/I code, but horribly inefficient.
- She said "Oh, I can't be bothered to learn about the procedure
- library."
-
- I've also seen this happen with scalar language programmers who
- start to pick up a vector language, e.g., Gauss, IDL. You look
- at the code, and they loop through vectors right and left,
- ignoring operators and functions. The stuff is syntactically
- correct, but idiomatically WRONG! APL tends not to suffer from
- this problem as much -- I think that's because APL syntax is so
- foreign it forces your thoughts into new constructs.
-
-
-