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!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Interest in standard smart pointers for Ada 2020 Date: Thu, 31 Aug 2017 14:48:54 +0200 Organization: Aioe.org NNTP Server Message-ID: References: NNTP-Posting-Host: vZYCW951TbFitc4GdEwQJg.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 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 Content-Language: en-US X-Notice: Filtered by postfilter v. 0.8.2 Xref: news.eternal-september.org comp.lang.ada:47853 Date: 2017-08-31T14:48:54+02:00 List-Id: On 31/08/2017 14:12, Alejandro R. Mosteo wrote: [...] My major concern is to have an ability to keep the target type private. To me smart pointers are useless otherwise. Note that this preempts discussion about implicit dereference. Apart from that smart pointer must be non-limited there should be no visible dereference because the target type is private. > I'd argue for having these, and also thread-safe implementations (that I > guess would be heavier, requiring protected internals). That depends on the safety meant here. If only pointer operations considered, not the operations delegated to the target type operations, then no protected object is required. Atomic increment and atomic fetch-and-decrement are sufficient. Needless to say that Ada must have a system package with these. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de