home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / lang / ada / 3763 < prev    next >
Encoding:
Text File  |  1992-12-21  |  3.2 KB  |  66 lines

  1. Newsgroups: comp.lang.ada
  2. Path: sparky!uunet!zaphod.mps.ohio-state.edu!cs.utexas.edu!milano!teenwolf.mcc.com!srogers
  3. From: srogers@teenwolf.mcc.com (Steve Rogers)
  4. Subject: Re: C++ vs. Ada -- Is Ada loosing?
  5. Message-ID: <1992Dec18.141448.13862@mcc.com>
  6. Sender: news@mcc.com
  7. Organization: MCC, Austin, Texas
  8. References: <11330@prijat.cs.uofs.edu> <172@fedfil.UUCP> <16269@goanna.cs.rmit.oz.au>
  9. Date: Fri, 18 Dec 1992 14:14:48 GMT
  10. Lines: 54
  11.  
  12. In article <16269@goanna.cs.rmit.oz.au> ok@goanna.cs.rmit.oz.au (Richard A. O'Keefe) writes:
  13.  
  14. >Just recentrly, I posted an article to comp.lang.c in which I listed a
  15. >number of errors in a textbook.  The textbook is about data structures
  16. >in C.  The authors understand data structures very well. . . . .
  17.  
  18.     <deleted>
  19.  
  20. >I believe that Ada is a bigger language than C.  Both languages have "dark
  21. >corners".  But there seems to be a tradition of Ada compilers being picky
  22. >and C compilers letting it all hang out.  With all due respect to "The
  23. >Emperor's New Clothes", which I loved when it came out, I am now _more_
  24. >frightened about critical software being written in C or C++ than in Ada.
  25. >
  26. >My current impression is that Ada textbooks tend to be more accurate in
  27. >the claims they make about what is or is not valid Ada, and tend to have
  28. >a higher level view of the software process, than C books.  Is this an
  29. >illusion, due to my knowing C relatively better than I know Ada?
  30. >
  31.  
  32. I'm not sure this is true; the Barnes Ada book has LOTS of examples that
  33. violate the LRM.  I think perhaps it's more of a way of teaching than
  34. a symptom of the particular language.  In my CS education, many instructors
  35. (and books) adopted a method of presenting a narrow version of the language
  36. as though it were the whole truth, then expanding it in steps with each
  37. new lesson; perhaps under the theory that this would make it easier to
  38. grasp the wider concepts.  I found it tiring after a while.  It would
  39. go something like (exaggerated)
  40.  
  41. 1. Variables are letters A-Z.  Use like A = 1.
  42. 2. Yesterday we learned variables are letters, today we will see that
  43.    variables can have numbers appended for extra clarity.  Like A1 = 1.
  44. 3. Today we see that variables can also have multiple letters and
  45.    underscores for even more clarity: ADD_VALUE = 1
  46. . . . . 
  47.  
  48. The frustrating thing is that they would never get around to specifying
  49. the fundamental principle behind the concept.  Eventually you find
  50. yourself saying: OK, OK, but what is a variable, *really*?  It
  51. seems more natural, IMHO, to start with the broad statement, then explain
  52. what it means with examples in various contexts; rather than assume an
  53. inital narrow context, then try to expand to more general cases.
  54.  
  55. I would say that C instruction does this more than Ada instruction, but
  56. by no means is it a C phenomena.  I don't know what the mistakes were
  57. that you found, but the ones I have noticed in the Barnes book are
  58. all due to simplification.  I attribute it to the idea (IMHO mistaken)
  59. that a student can benefit from an example that illustrates an idea
  60. in a very clear and simple way, but which is invalid in the full context
  61. of the language.
  62.  
  63. -- 
  64. | Steven Rogers  MCC/ESL  3500 West Balcones Drive
  65. | Austin, Texas 78759-6509  (512) 338-3691 srogers@mcc.com
  66.