home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / sys / mac / oop / misc / 147 < prev    next >
Encoding:
Text File  |  1992-12-30  |  3.6 KB  |  73 lines

  1. Newsgroups: comp.sys.mac.oop.misc
  2. Path: sparky!uunet!news.mentorg.com!scherzo!bcohen
  3. From: bcohen@scherzo.mentorg.com (Speaker-to-Managers)
  4. Subject: Re: Learning App Frameworks (was Re: THINK Class Library learning..)
  5. Sender: news@news.mentorg.com (News User)
  6. Message-ID: <1992Dec30.204847.733@news.mentorg.com>
  7. Date: Wed, 30 Dec 1992 20:48:47 GMT
  8. References: <1992Dec1.220344.234@physc1.byu.edu> <1992Dec3.064131.23364@reed.edu> <Dec.3.13.57.31.1992.18090@gandalf.rutgers.edu> <1992Dec4.081456.13906@reed.edu> <1992Dec29.213057.14290@news.mentorg.com> <6606.2b41845f@hayes.com>
  9. Nntp-Posting-Host: scherzo.mentorg.com
  10. Organization: ElectroPolitical Engineering Enterprises
  11. Keywords: 
  12. Followup-To: 
  13. Lines: 58
  14.  
  15. In article <6606.2b41845f@hayes.com>, bcoleman@hayes.com (Bill Coleman) writes:
  16. |> ...
  17. |> Indeed. And, in the case of MacApp and the TCL, the developers of these
  18. |> frameworks have only shipped half of the product. They have shipped the parts,
  19. |> but when it comes to delivering the description -- what little they have
  20. |> shipped is woefully inadequate. 
  21.  
  22. *SIGH*, all too true.  I've started using TCL recently, after several years
  23. of using InterViews in the Unix world, and two projects (for my day job) devoted to
  24. created object frameworks for other people.  So I can say that I have
  25. sinned as much as been sinned against in this respect: the first time I
  26. tried delivering a framework the documentation was inadequate.  But I'm
  27. learning.
  28.  
  29. |> ...
  30. |> Part of the problem is the character of the implementation languages used 
  31. |> for these frameworks -- it isn't entirely the fault of the
  32. |> developers.
  33.  
  34. And the culture which has arisen around the programming language:
  35. there's an old tradition in old-line C shops of "there's nothing you
  36. can't understand by reading the source code; the man pages are for
  37. people with short memories."
  38.  
  39. |> 
  40. |> Until documentation and languages appear that are conducive to producing
  41. |> concise frameworks, we'll have to continue to struggle along with wading
  42. |> through the source code.
  43. |> 
  44.  
  45. And until there are generally available tools for easily producing and using
  46. documentation (and no, I DON'T mean automatic man page generators!)
  47. about programs, only the strongly motivated will produce or use it.
  48. Problem with that is the users tend to be more motivated than the producers.
  49.  
  50. |> ...
  51. |> Sounds like you are suggesting people build frameworks in Eiffel, which
  52. |> has formal mechanisms for defining pre and post conditions for all routines.
  53. |> 
  54. |> Too bad there isn't such an Eiffel implementation for the Mac.
  55.  
  56. Eiffel is one way, though I'm not advocating it strongly.  There are ways to
  57. annotate existing languages like C++ with assertions, documentation, and
  58. so on.  See, for instance, A++, or some of Doug Lea's papers on
  59. annotated c++.  (Another *SIGH*: If Doug didn't habitually load himself
  60. down with 2-3 full-time jobs, or if some intelligent software company
  61. were to give him a big salary just to work on the annotation project, he
  62. might have gotten it done by now, and all this angst would be academic).
  63.  
  64. It's really amazing how much you can do with a preprocessor in front of
  65. a language translator.  Annotations are one example; the addition of
  66. signatures to clean up the C++ type system (Vince Russo, et. al. at
  67. Purdue), the old COOL template front-end which gave us C++ parameterized
  68. types back in the 2.0 days, are others.
  69. ------------------------------------------------------------------------
  70. Bruce Cohen, Mentor Graphics Corpooration | email: Bruce_Cohen@mentorg.com
  71. 8005 SW Boeckman Road                     | phone: (503)685-1808
  72. Wilsonville, OR 97070-7777                |
  73.