home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / edu / 1575 < prev    next >
Encoding:
Internet Message Format  |  1992-09-08  |  3.6 KB

  1. Xref: sparky comp.edu:1575 comp.lang.fortran:3474
  2. Newsgroups: comp.edu,comp.lang.fortran
  3. Path: sparky!uunet!spool.mu.edu!caen!hellgate.utah.edu!lanl!cochiti.lanl.gov!jlg
  4. From: jlg@cochiti.lanl.gov (Jim Giles)
  5. Subject: Re: Case Sensitivity (was Re: Small Language Wanted)
  6. Message-ID: <1992Sep8.175330.14163@newshost.lanl.gov>
  7. Sender: news@newshost.lanl.gov
  8. Organization: Los Alamos National Laboratory
  9. References: <DAVIS.92Aug23010605@pacific.mps.ohio-state.edu> <1992Aug25.034553.2990@linus.mitre.org> <1992Aug25.104211.1@vxdesy.desy.de> <999@engcon.marshall.ltv.com>
  10. Date: Tue, 8 Sep 1992 17:53:30 GMT
  11. Lines: 54
  12.  
  13. In article <999@engcon.marshall.ltv.com>, rodgers@engcon.marshall.ltv.com (KMRODGERS) writes:
  14. |> [...]
  15. |> I hate contributing to this particular religious warfare (hence the changed
  16. |> Subject: line), but I think that case sensitivity, WHEN PROPERLY USED, is
  17. |> (IMHO) a Good Thing.  [...]                          These are represented
  18. |> in handwritten or typeset form as as capital "C" followed by various upper
  19. |> and lowercase subscripts. The case of the subscript is important!  E.g.,
  20. |> cap "C" sub "L" is lift coefficient, while cap "C" sub "l" is rolling moment
  21. |> coefficient -- two drastically different quantities. [...]
  22.  
  23. I, reluctantly, disagree with this.  This is using case significance as
  24. a form of `Hungarian notation' where case has an independent semantic
  25. meaning.  If you are arguing that the language should *enforce* such a
  26. convention, then maybe I would agree with you (I'd have to see the whole
  27. proposed use of case).  As it is, case has no enforced semantic meaning
  28. and differing conventions (as well as intentional and accidental violations
  29. of such conventions) lead to more confusion among colleagues than the
  30. added `convenience' is worth.
  31.  
  32. In the meantime, case *INsensitivity* allows the use of case for
  33. emphasis and for documentation.  This is also a minor convenience.
  34. Which dominates and in what contexts is a subject for research.
  35. But, I feel that case sensitivity is best when it has specific
  36. meaning to the language (like: all identifiers which begin with 
  37. uppercase are function or constructor names - and the compiler
  38. enforces that).
  39.  
  40. |> [...]
  41. |> If one of the goals of a computer language, especially one for scientific
  42. |> and engineering computation, is to try to preserve as much as possible
  43. |> and reasonable the natural notations of these fields (a claim that I have
  44. |> heard Jim Giles make before, and one with which I agree), then I think that
  45. |> case sensitivity is important, and this is _one_ area where C is superior to
  46. |> Fortran. (Note the emphasis; I make no other claims in this rwar.)
  47.  
  48. Yes, and conventional mathematical and scientific notation also make use of
  49. bold vs. normal, Roman vs. Greek, fraktur vs. times-roman (font as opposed
  50. to alphabet), etc..  Some notations even use the front half of the alphabet
  51. for one thing and the back half for something else (and the middle `half'
  52. for still other uses).  Unless you can provide *all* of these, the programmer
  53. must spell out most such distinctions explicitly anyway.  I think that in
  54. most programming contexts, case sensitivity is undesirable.  In a symbolic
  55. package like Macsyma or Mathematica, such notations should be supported
  56. (including the fonts, alphabets, intensity, etc.).
  57.  
  58. In any case (alright - I noticed the pun), I think there should be some
  59. human factors tests before anyone starts a war on the issue of case
  60. sensitivity.  Case sensitivity should be tested, and in a variety of
  61. programming languages and contexts - and should only be adopted in contexts
  62. where it shows a *real* advantage.  I suspect it will usually be better
  63. when the compiler enforces meaning on case sensitivity.
  64.  
  65. -- 
  66. J. Giles
  67.