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.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,29e947df2e56cc40,start X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-07-29 16:14:17 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!kibo.news.demon.net!demon!peernews!peer.cwci.net!newspeer1-gui.server.ntli.net!ntli.net!newsfep3-gui.server.ntli.net.POSTED!53ab2750!not-for-mail From: "chris.danx" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1b) Gecko/20020721 X-Accept-Language: en-gb, en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: What's it's name again? Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Inktomi-Trace: pc3-bbrg1-2-cust234.ren.cable.ntl.com 1027984456 6232 80.5.140.234 (29 Jul 2002 23:14:16 GMT) Message-ID: Date: Tue, 30 Jul 2002 00:13:38 +0100 NNTP-Posting-Host: 80.3.128.5 X-Complaints-To: abuse@ntlworld.com X-Trace: newsfep3-gui.server.ntli.net 1027984456 80.3.128.5 (Tue, 30 Jul 2002 00:14:16 BST) NNTP-Posting-Date: Tue, 30 Jul 2002 00:14:16 BST Organization: ntl News Service Xref: archiver1.google.com comp.lang.ada:27462 Date: 2002-07-30T00:13:38+01:00 List-Id: Hi, What do you call private types whose declaration is found in the specification but whose definition is found in the body? I remember reading/hearing that they have a name (or term) associated with them, but can't remember what it is. Are there any complications with moving type definitions to the body? (e.g. with controlled types?). Cohens' book is at the ready, just need their name or a pointer! I currently have some packages which look like package some_kind_of_data_structure is type data_structure is private; private type data_structure is Ada.Finalized.Controlled with record ... end record; end some_data_structure; but have been wondering what would happen if the definitions were moved (the obvious benefit is that the package specification does not need to be recompiled when the representation is changed, but is that really a benefit when small numbers of files are involved?) This kind of design was mentioned in passing in a Software Design course, and I wondered why people prefer one way over the other (most of the ada code I've seen uses the spec to complete the definition of a type). Just curious, that's all! Regards, Chris -- to reply change 'spamoff' to 'chris'