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 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,9d303864ae4c70ad X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2004-04-14 01:49:42 PST Path: archiver1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!dialin-145-254-044-107.arcor-ip.NET!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: Reprise: 'in out' parameters for functions Date: Wed, 14 Apr 2004 10:49:27 +0200 Organization: At home Message-ID: References: <5ad0dd8a.0404090512.15af2908@posting.google.com> <5ad0dd8a.0404091828.6e79bb4e@posting.google.com> <5ad0dd8a.0404100735.7b2a8317@posting.google.com> <5ad0dd8a.0404130130.66d5e721@posting.google.com> <5ad0dd8a.0404131441.20b8a942@posting.google.com> Reply-To: mailbox@dmitry-kazakov.de NNTP-Posting-Host: dialin-145-254-044-107.arcor-ip.net (145.254.44.107) Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit X-Trace: news.uni-berlin.de 1081932581 2293558 I 145.254.44.107 ([77047]) User-Agent: KNode/0.7.2 Xref: archiver1.google.com comp.lang.ada:7074 Date: 2004-04-14T10:49:27+02:00 List-Id: Wojtek Narczynski wrote: >>> You silently refused to say what abstraction inversion is according >>> to you :-) > >> We can use your definition if you want. (:-)) > > My impression was that, according to you, mine was wrong. Certainly, I > would prefer to use the right one. I did not disagree with your definition. I did with your statement that Ada's protected objects are wrong way. They might have problems, though. But it appeared, as you treating them as completely wrong. >>> Then we're talking about two distinct things. I am talking about a >>> compile time solution only. > >> Why should they be distinct? > > Checking physical units statically would be helpful for high integrity > software. I don't see any practical use for runtime unit checks. Only because I see no smiley... How would you implement: procedure Put (Stream : File, Value : Measurement); procedure Get (Stream : File, Value : out Measurement); For example, a requirement of one of our customer was to have a button in his MMI to switch between European and American units in all visual elements and printouts. Now go, figure out, how would you solve that using templates. BTW, European /= SI, because of km/h, ps, Celsius degree etc. Not to forget dozens of external devices all working with units of their own, all need to be hot pluggable etc. >> I didn't say that (2) is not solvable. I just invited you to think about >> it more deeply, before making some final statements. > > It is unclear to me what final statements you are referring to. That Ada exception model should be replaced by some other. -- Regards, Dmitry A. Kazakov www.dmitry-kazakov.de