From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,b74ec64483660e21 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-07-25 19:05:37 PST Path: archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!cyclone.bc.net!newsfeed.direct.ca!look.ca!newsfeed1.earthlink.net!newsfeed2.earthlink.net!newsfeed.earthlink.net!news.mindspring.net!not-for-mail From: Lao Xiao Hai Newsgroups: comp.lang.ada Subject: Re: Deligation with Ada95 Date: Wed, 25 Jul 2001 19:06:18 -0700 Organization: AdaWorks Software Engineering Message-ID: <3B5F7B19.97EAD3B9@ix.netcom.com> References: <9ji1b3$4pi$1@nh.pace.co.uk> Reply-To: richard@adaworks.com NNTP-Posting-Host: 9e.fc.c5.3d Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Server-Date: 26 Jul 2001 02:05:03 GMT X-Mailer: Mozilla 4.7 [en] (Win98; I) X-Accept-Language: en Xref: archiver1.google.com comp.lang.ada:10582 Date: 2001-07-26T02:05:03+00:00 List-Id: Hans-Olof Danielsson wrote: > Hi, > > Some experts state that _deligation_ is a technique used in OOP > to avoid subclassing reducing the complexity of a system. If some > of you know recourses, other than ACM Ada Letters, Nov/Dec > 1994, covering this technique applied with Ada 95, > would you please apoint me those other recources. The best example of delegation in Ada 95 is the requeue. In delegation, one object asks another to do the actual work requested of it. That class can then forget about the delegation. The delegated class can respond directly to the original requestor. This is not like a procedure call where the original request must unwind through a stack. It is not like an entry call where the request is kept on the queue of the accept statement. The actual requeue does not block the delegator the way an entry call would. There are actually very few languages that implement this idea directly. C++, in its first design, was intended to include this feature, but it was eliminated for some reason. Richard Riehle AdaWorks Software Engineering richard@adaworks.com