From ... Path: supernews.google.com!sn-xit-03!supernews.com!cyclone-sjo1.usenetserver.com!news-out-sjo.usenetserver.com!news.tele.dk!129.240.148.23!uio.no!Norway.EU.net!not-for-mail From: Erik Naggum Newsgroups: comp.lang.lisp Subject: Re: Trouble with labels Date: 12 Apr 2001 13:36:45 +0000 Organization: Naggum Software, Oslo, Norway Lines: 21 Message-ID: <3196071405677961@naggum.net> References: <4sf6dto7mf556cvahss96e5u1087idd6vq@4ax.com> <3195982690560792@naggum.net> <4w3B6.364$U4.14767@burlma1-snr2> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: oslo-nntp.eunet.no 987082605 109 195.0.192.66 (12 Apr 2001 13:36:45 GMT) X-Complaints-To: newsmaster@eunet.no NNTP-Posting-Date: 12 Apr 2001 13:36:45 GMT Mail-Copies-To: never User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 Xref: supernews.google.com comp.lang.lisp:9219 * Barry Margolin > Actually, the above example is pretty silly. :before and :after methods > are mostly useful in subclasses or mixin classes, to add behavior without > totally overriding the primary method that you inherit. Putting the > :before method in the same class as the primary method doesn't really > make a whole lot of sense -- the error check could just as easily be put > in the primary method. Sigh. In real life, how you deal with withdrawal requests in the absence of sufficient funds depends on the account. Add a credit limit, and you need more work, for instance. The reaction to such a request is _not_ integral to the withdrawal process, and conflating the two processes of updating the balance and dealing with insufficient funds is really silly, because you need to reimplement the core operation (updating the balance) in a subclass with different characteristics. That's bad design. #:Erik -- I found no peace in solitude. I found no chaos in catastrophe. -- :wumpscut: