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=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED.3d73Ybk3C5U4I2t8lv+lAQ.user.gioia.aioe.org!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Is this a bug? Date: Mon, 30 Dec 2019 21:11:04 +0100 Organization: Aioe.org NNTP Server Message-ID: References: <1d96e0e1-7700-4947-9fcb-051a1203c703@googlegroups.com> NNTP-Posting-Host: 3d73Ybk3C5U4I2t8lv+lAQ.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.1 Content-Language: en-US X-Notice: Filtered by postfilter v. 0.9.2 Xref: reader01.eternal-september.org comp.lang.ada:57777 Date: 2019-12-30T21:11:04+01:00 List-Id: On 2019-12-30 20:50, reinert wrote: > I have had the understanding that the *intention* of primitive operations of tagged (record) types in some way can be looked at as an extension of the actual record - especially if one uses the dot notation. In this case I would expect (at least) a warning from the compiler. Actually a correct design would be equivalence of a record member with two primitive operations getter and setter AKA abstract record interface. In that case the program would become incorrect. All this is also related to the problem of private primitive operations. A lot of legacy code will get broken if attempted to fix these. IMO it would be better to design a new abstract type system from scratch and implement tagged types with all their quirks on top of it. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de