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.2 required=5.0 tests=BAYES_00,INVALID_MSGID, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,a86f1b04a0a258b4 X-Google-Attributes: gid103376,public From: Pierre DISSAUX Subject: Re: UML & Ada Date: 1998/06/19 Message-ID: <358A24F7.2D85@tni.fr>#1/1 X-Deja-AN: 364139486 Content-Transfer-Encoding: 7bit References: <35868F4A.FC463980@email.mot.com> <35880034.68F8@cs.umd.edu> <6m9f26$nkf@dfw-ixnews7.ix.netcom.com> <6malik$42b@gcsin3.geccs.gecm.com> Content-Type: text/plain; charset=us-ascii Organization: TNI http://www.tni.fr/ Mime-Version: 1.0 Reply-To: pierre.dissaux@tni.fr Newsgroups: comp.lang.ada Date: 1998-06-19T00:00:00+00:00 List-Id: John McCabe wrote: > > Richard D Riehle wrote: > > >What we need, for Ada, is an Ada-specific notation for object modeling, > >one which takes advantage of the power of Ada rather than the > >limitations of C++. I recall that Ed Colbert was working on a modeling > >notation that would map to Ada. I wonder if he is still pursuing this. > > As a matter of interest, have you checked out HOOD (Version 4)? I have > been led to believe that the mapping to Ada is quite good, but whether > HOOD has become more Object-Oriented rather than Object Based in its > transition from 3.1 to 4 I don't know. It was one of the aims of this release of the method. There is now an explicit concept of HOOD4 Class, which describes an Abstract module (Type + primitive ops). Its behaviour may be described by a State Transition Diagram, and it may be annotated graphically to map Ada constructs: - A passive HOOD4 class produces a package with a tagged type. - An active HOOD4 class produces a package with a task type. - A passive HOOD4 class with Read-Only or Read-Write labels on its operations produces a package with a protected type. There is a similar mapping for modules containing data (Objects): - A passive HOOD4 object produces a package. - An active HOOD4 object produces a package with a task. - A passive HOOD4 object with Read-Only or Read-Write labels on its operations produces a package with a protected object. You can mix Classes and Objects, in order to explicitly specify where you decided to use static instances (HOOD objects), and where you let the ability to use dynamic instances (HOOD classes). Generic classes and objects are also supported at high level. There is a support of inheritance and polymorphism ("abstract" and "inherited" operations). .... Graphical notations are very close to those of UML. > > Also, TNI do a tool called STOOD which is supposed to have code > generation targeted to GNAT (or something like that). You are right, but we also target ObjectAda from Aonix (It was recently demonstrated at DASIA'98 in Athens). Pierre DISSAUX TNI http://www.tni.fr/