Article View: comp.sys.mac.oop.misc
Article #139Re: Learning App Frameworks (was Re: THINK Class Library learning..)
From: Kent Sandvik
Date: Thu, 07 Jan 1993 06:27
Date: Thu, 07 Jan 1993 06:27
32 lines
2422 bytes
2422 bytes
In article <6613.2b459125@hayes.com>, bcoleman@hayes.com (Bill Coleman) wrote: > First, the C++ macros were part of the implementation, not part of the > interface. Eiffel correctly places the pre- and post-conditions in the > interface -- since they are just as much of the specficiation of the > routines as anything else. I ended up having to move the implementation > assertions as comments in the header -- it was a lot of work to keep it up > to date and accurate. Well, I don't question that a pre-processor that automatically inserts the constructs is better than programmer responsibility concerning assertions. However you could also forget to specify the assertion flag in Eiffel, causing similar problems. In other words it's not a panacea when a compiler is automatically doing the job, there's still a responsibility of the programmer to keep track of the state. Correct me if I'm wrong (haven't looked into Eiffel for a long time, got tired of waiting for the Mac port :-) ), but you still need to provide meta-information about the assertion statements for Eiffel (like min max values). In other words you can't avoid work anyway. Anyway, my ASSERT macro package is less than a page, does it's job well, and once written I could use it wherever I want, in whatever scope. And I don't have problems keeping track of use of the package, it's now second nature for me to ripple in assert statements in the code. Kent ------------------- Kent Sandvik (UUCP: ....!apple!ksand; INTERNET: ksand@apple.com) DISCLAIMER: Private activities on the Net. "Don't just do something! Stand there!" -- Mystery Science Theater 3000
Technical Details
Message-ID:
<ksand-060193222337@wintermute.apple.com>Path:
arc1-ca.pugleaf.net!sparky!uunet!spool.mu.edu!olivea!apple!goofy!mumbo.apple.com!gallant.apple.com!wintermute.apple.com!userReferences:
<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> <ksand-301292103135@wintermute.appleShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!spool.mu.edu!olivea!apple!goofy!mumbo.apple.com!gallant.apple.com!wintermute.apple.com!user From: ksand@apple.com (Kent Sandvik ) Newsgroups: comp.sys.mac.oop.misc Subject: Re: Learning App Frameworks (was Re: THINK Class Library learning..) Message-ID: <ksand-060193222337@wintermute.apple.com> Date: 7 Jan 93 06:27:43 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> <ksand-301292103135@wintermute.apple Sender: news@gallant.apple.com Followup-To: comp.sys.mac.oop.misc Organization: (Evil Eye Creature from Mars, Inc.) Lines: 32