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=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,cc4f25d878383cc X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-12-07 14:51:48 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!wn4feed!worldnet.att.net!204.127.198.203!attbi_feed3!attbi.com!rwcrnsc53.POSTED!not-for-mail From: "Mark Lundquist" Newsgroups: comp.lang.ada References: <3C0A5054.E74A82E7@worldnet.att.net> <9ugs4v$8d7lj$1@ID-25716.news.dfncis.de> <3c0cc931.16965562@News.CIS.DFN.DE> <36c6f8dd.0112061152.333c9de@posting.google.com> Subject: Re: Dimensionality Checking (Ada 20XX) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Message-ID: <8KbQ7.16687$Yy.285672@rwcrnsc53> Date: Fri, 07 Dec 2001 22:51:48 GMT NNTP-Posting-Host: 204.127.202.211 X-Complaints-To: abuse@attbi.com X-Trace: rwcrnsc53 1007765508 204.127.202.211 (Fri, 07 Dec 2001 22:51:48 GMT) NNTP-Posting-Date: Fri, 07 Dec 2001 22:51:48 GMT Organization: AT&T Broadband Xref: archiver1.google.com comp.lang.ada:17616 Date: 2001-12-07T22:51:48+00:00 List-Id: "Britt Snodgrass" wrote in message news:36c6f8dd.0112061152.333c9de@posting.google.com... > > Most unit inconsistencies would be caught > during compilation. If a unit mismatch can't be caught until runtime, > then a predefined Unit_Error exception would be raised (unless the > code had been compiled with Pragma Suppress (Unit_Checks) ). Well, I would think that unit checking would be *entirely* a compile-time phenomenon. Can you think of any reason why it would not be? Also... you want to set up the proposed feature so that it can be defined without touching the conformance rules in any way, which means that at some point you "bury" the units in the type and then don't think about them any more. That point is the application of the 'Unit representation clause in your scheme. Assuming this, then the check that actually takes place is just the normal type check, which of course is fully static (except for tagged types, but the reasons for that are completely unrelated and do not apply to scalars). Cheers, Mark