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.3 required=5.0 tests=BAYES_00, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail From: "G.B." Newsgroups: comp.lang.ada Subject: Re: Top 10 Worst C# Features Date: Thu, 3 Sep 2015 13:39:22 +0200 Organization: A noiseless patient Spider Message-ID: References: Reply-To: nonlegitur@futureapps.de Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Thu, 3 Sep 2015 11:37:34 +0000 (UTC) Injection-Info: mx02.eternal-september.org; posting-host="b96887e80893c84a90c3007226ca0d1c"; logging-data="17045"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+CJV0wt/X8fyfPVbLS2Gbwc33D0UqxSMo=" User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 In-Reply-To: Cancel-Lock: sha1:oo3j+uUMPlpNAUABxdlsJgdrrbQ= Xref: news.eternal-september.org comp.lang.ada:27695 Date: 2015-09-03T13:39:22+02:00 List-Id: On 03.09.15 11:26, Dmitry A. Kazakov wrote: > On Thu, 3 Sep 2015 10:14:35 +0200, Georg Bauhaus wrote: > >> What finalization can presumably solve I'd love to see addressed >> systematically, using language that attaches life cycle events to >> types. > > What a horrific idea... > >> Is it possible to produce a scheme that makes attaching "event >> subprograms", say, well defined? Maybe permissions would be based >> on visibility of entities referred to? > > No. > > 1. Regarding types there is no any events. Yes. Perhaps I should first say what "event" is to name. (The word being used in different contexts, AFAICT.) Extensionally, an event is something that happens at some point in the lifetime of an object, such as being passed, or one of its operations being called (maybe for the 'Nth time). > Either a type exists or it does not. Yes. > Furthermore a type is immutable > throughout all its life, Yes. > An object of a type is *same* in all contexts, because the type is same. While an object doesn't change either identity or type, it does changes state. This is an event, too. > What you propose is not typed. I think that what you might have misunderstood is not typed. :-) > 2. Regarding finalization, another crucial point. Finalization is *not* an > operation. I'm not asking for finalization as an operation. I'm asking for clearly defined hooks made for operations (or something else) for what programmers will now put into Finalize, since there is nothing else where to put it.