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=-1.1 required=5.0 tests=BAYES_00, PP_MIME_FAKE_ASCII_TEXT autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,5c89acd494ea9116 X-Google-Attributes: gid103376,public,usenet X-Google-Language: ENGLISH,ASCII Path: g2news2.google.com!news1.google.com!newshub.sdsu.edu!newscon04.news.prodigy.net!prodigy.net!newsdst01.news.prodigy.net!prodigy.com!postmaster.news.prodigy.com!newssvr29.news.prodigy.net.POSTED!4988f22a!not-for-mail From: Newsgroups: comp.lang.ada References: <1183577468.034566.57830@n60g2000hse.googlegroups.com> <1188578849.187422.280620@50g2000hsm.googlegroups.com> <9fy1xoukz1e3$.h574sqmiauri$.dlg@40tude.net> <46d968ee$0$30368$9b4e6d93@newsspool4.arcor-online.net> <137iu0lr82dtb$.wqy3zjz2vr9q.dlg@40tude.net> <46d972e8$0$30384$9b4e6d93@newsspool4.arcor-online.net> <1alyfwaig93sk$.99oy269uon$.dlg@40tude.net> <46d9c138$0$4531$9b4e6d93@newsspool3.arcor-online.net> <1rt8kdcrj6tf.1qgvycc6vh357$.dlg@40tude.net> <46db2bf4$0$7699$9b4e6d93@newsspool2.arcor-online.net> <1188816674.2630.25.camel@kartoffel.vocalweb.de> <9cdmw7k85sey.85sb2t1bjefy$.dlg@40tude.net> Subject: Re: Self pointer in limited record X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.3138 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 X-RFC2646: Format=Flowed; Response Message-ID: <%F8Wi.65812$YL5.59800@newssvr29.news.prodigy.net> NNTP-Posting-Host: 70.134.126.233 X-Complaints-To: abuse@prodigy.net X-Trace: newssvr29.news.prodigy.net 1193875195 ST000 70.134.126.233 (Wed, 31 Oct 2007 19:59:55 EDT) NNTP-Posting-Date: Wed, 31 Oct 2007 19:59:55 EDT Organization: SBC http://yahoo.sbc.com X-UserInfo1: SCSGW^WETZSMB_DX]BCBNWX@RJ_XPDLMN@GZ_GYO^RR@ETUCCNSKQFCY@TXDX_WHSVB]ZEJLSNY\^J[CUVSA_QLFC^RQHUPH[P[NRWCCMLSNPOD_ESALHUK@TDFUZHBLJ\XGKL^NXA\EVHSP[D_C^B_^JCX^W]CHBAX]POG@SSAZQ\LE[DCNMUPG_VSC@VJM Date: Wed, 31 Oct 2007 23:59:55 GMT Xref: g2news2.google.com comp.lang.ada:2688 Date: 2007-10-31T23:59:55+00:00 List-Id: "Jean-Pierre Rosen" wrote in message news:qpahbf.s76.ln@hunter.axlog.fr... > Dmitry A. Kazakov a �crit : >> It is difficult to see how an abstract state machine is not a type. The >> very word abstract assumes generalization, reuse and instances. It is types >> and generics, the tools to express the idea of instances. >> > Sorry, but I beg to disagree here. > > Abstraction is about the reduction of a real world objet to those elements > that are relevant for a given point of view. > > A singleton is an abstraction of a single object, and does not need a type. I > don't see anything in the word abstract that assumes generalization. > -- I usually think of this, package Integer_Stack is -- no exported type procedure Push(Data : Integer); -- more operations end Integer_Stack; as a kind of ASM (an object package), where, package Stacker is type Integer_Stack is limited private; procedure Push ... private -- full type definition end Stacker; supports an ADT. In the both cases, there is internal state. In the first, no instances are possible except by putting the package in scope (with Integer_Stack). In the second, the existence of the package simply wraps the ADT, and multiple instances can be declared of the exported type. Perhaps this is an oversimplification, but it works in practice. Richard Riehle