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!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Finalization of library level tasks Date: Tue, 1 May 2018 11:40:37 +0200 Organization: Aioe.org NNTP Server Message-ID: References: <3b736ddf-0807-4781-a973-6164280faae7@googlegroups.com> NNTP-Posting-Host: kQkuQcRDy1QFvWpyB1foYw.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:52.0) Gecko/20100101 Thunderbird/52.7.0 Content-Language: en-US X-Notice: Filtered by postfilter v. 0.8.3 Xref: reader02.eternal-september.org comp.lang.ada:51878 Date: 2018-05-01T11:40:37+02:00 List-Id: On 2018-05-01 11:17, AdaMagica wrote: > What I do not understand is the model he wants to have for Finalize'Class. I can elaborate if you explain what you understand under "model". > The idea is quite complicated because of Rosen's trick, redispatch etc. No, the idea is simple - objects of any type must allow user-defined finalization (and initialization). Rosen's trick and re-dispatch are not my ideas but existing Ada features. The latter has huge issues with type consistency which has negative effect on finalization. > Dmitry only posts some fragmentary ideas without ever giving a complete elaboration. So we, if we try to understand and argue with him, have to imagine and guess what the hell he has in mind. I am ready to answer any questions. Normally all discussions deviate straight to "Aber, meine Herren, das ist keine Physik", or to denial of any software design concepts from ADT to nested tasks and then the problem itself: nobody needs X (substitute "finalization", "task component" etc). > You cannot directly pass an x of type T3 to this Finalize. You can make his example work if you add quite some more code. His examples like this one, if really current Ada (and not some wishful version), are rarely complete. Yes, it is always pseudo-code I use in such discussions. If I made it precise, people would critique syntax issues. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de