Article View: comp.sys.mac.oop.misc
Article #126Re: Learning App Frameworks (was Re: THINK Class Library learning..)
From: Speaker-to-Managers
Date: Thu, 31 Dec 1992 09:57
Date: Thu, 31 Dec 1992 09:57
81 lines
4222 bytes
4222 bytes
In article <6606.2b41845f@hayes.com>, bcoleman@hayes.com (Bill Coleman) writes: |> ... |> Indeed. And, in the case of MacApp and the TCL, the developers of these |> frameworks have only shipped half of the product. They have shipped the parts, |> but when it comes to delivering the description -- what little they have |> shipped is woefully inadequate. *SIGH*, all too true. I've started using TCL recently, after several years of using InterViews in the Unix world, and two projects (for my day job) devoted to created object frameworks for other people. So I can say that I have sinned as much as been sinned against in this respect: the first time I tried delivering a framework the documentation was inadequate. But I'm learning. |> ... |> Part of the problem is the character of the implementation languages used |> for these frameworks -- it isn't entirely the fault of the |> developers. And the culture which has arisen around the programming language: there's an old tradition in old-line C shops of "there's nothing you can't understand by reading the source code; the man pages are for people with short memories." |> |> Until documentation and languages appear that are conducive to producing |> concise frameworks, we'll have to continue to struggle along with wading |> through the source code. |> And until there are generally available tools for easily producing and using documentation (and no, I DON'T mean automatic man page generators!) about programs, only the strongly motivated will produce or use it. Problem with that is the users tend to be more motivated than the producers. |> ... |> Sounds like you are suggesting people build frameworks in Eiffel, which |> has formal mechanisms for defining pre and post conditions for all routines. |> |> Too bad there isn't such an Eiffel implementation for the Mac. Eiffel is one way, though I'm not advocating it strongly. There are ways to annotate existing languages like C++ with assertions, documentation, and so on. See, for instance, A++, or some of Doug Lea's papers on annotated c++. (Another *SIGH*: If Doug didn't habitually load himself down with 2-3 full-time jobs, or if some intelligent software company were to give him a big salary just to work on the annotation project, he might have gotten it done by now, and all this angst would be academic). It's really amazing how much you can do with a preprocessor in front of a language translator. Annotations are one example; the addition of signatures to clean up the C++ type system (Vince Russo, et. al. at Purdue), the old COOL template front-end which gave us C++ parameterized types back in the 2.0 days, are others. ------------------------------------------------------------------------ Bruce Cohen, Mentor Graphics Corpooration | email: Bruce_Cohen@mentorg.com 8005 SW Boeckman Road | phone: (503)685-1808 Wilsonville, OR 97070-7777 | ------ Internet Message Header Follows ------ Newsgroups: comp.sys.mac.oop.misc Path: wupost!crcnis1.unl.edu!moe.ksu.ksu.edu!zaphod.mps.ohio-state.edu!usc!cs.utexas.edu!uunet!news.mentorg.com!scherzo!bcohen From: bcohen@scherzo.mentorg.com (Speaker-to-Managers) Subject: Re: Learning App Frameworks (was Re: THINK Class Library learning..) Sender: news@news.mentorg.com (News User) Message-ID: <1992Dec30.204847.733@news.mentorg.com> Date: Wed, 30 Dec 1992 20:48:47 GMT 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> Nntp-Posting-Host: scherzo.mentorg.com Organization: ElectroPolitical Engineering Enterprises Keywords: Followup-To: Lines: 58
Technical Details
Message-ID:
<1992Dec31.045728.2808622648@ultramac.uucp>Path:
arc1-ca.pugleaf.net!sparky!uunet!wupost!ultramac!raphShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!wupost!ultramac!raph Message-ID: <1992Dec31.045728.2808622648@ultramac.uucp> Newsgroups: comp.sys.mac.oop.misc Distribution: world From: bcohen@scherzo.mentorg.com (Speaker-to-Managers) Organization: Odyssey Ultraware, Inc Date: Thu, 31 Dec 1992 04:57:28 CDT Subject: Re: Learning App Frameworks (was Re: THINK Class Library learning..) Lines: 83