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-Thread: 103376,78447032bdbeb343 X-Google-Attributes: gid103376,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news4.google.com!feeder.news-service.com!newsfeed0.kamp.net!newsfeed.kamp.net!newsfeed.freenet.de!newsfeed01.chello.at!newsfeed.arcor.de!newsspool2.arcor-online.net!news.arcor.de.POSTED!not-for-mail Date: Sat, 31 May 2008 11:04:28 +0200 From: Georg Bauhaus Reply-To: rm.tsho+bauhaus@maps.futureapps.de User-Agent: Thunderbird 2.0.0.14 (X11/20080502) MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Proposal: pragma Assumption References: <30917be5-1446-417c-8a4e-18b2f9a1f420@b1g2000hsg.googlegroups.com> <97479cac-db1a-4654-949b-2caa45031cf1@t54g2000hsg.googlegroups.com> <4d2bb014-c956-454b-bcfb-a98cd524e5b4@m36g2000hse.googlegroups.com> <483fb1d3$0$6556$9b4e6d93@newsspool3.arcor-online.net> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Message-ID: <4841149c$0$7537$9b4e6d93@newsspool1.arcor-online.net> Organization: Arcor NNTP-Posting-Date: 31 May 2008 11:04:28 CEST NNTP-Posting-Host: c9ea398a.newsspool1.arcor-online.net X-Trace: DXC=_\33_CJRIi7nBOkdL^Lo7>ic==]BZ:af>4Fo<]lROoR1<`=YMgDjhg2IFejV8XDSS@A]i6j3KPG5nUlBb]1 X-Complaints-To: usenet-abuse@arcor.de Xref: g2news1.google.com comp.lang.ada:497 Date: 2008-05-31T11:04:28+02:00 List-Id: Stephen Leake wrote: > Georg Bauhaus writes: > >> Randy Brukardt wrote: >> >>> I don't get it. If you remove the package containing Unimplemented from the >>> program (as you should do in this case), any remaining references will be >>> caught by the compiler as undefined. >> I thought that, too, but then considered programmers >> who wouldn't mind a "workaround": >> "If that Simplifying_Assumption package is gone away, >> stupid big IT organization, I'll roll my own. >> I don't want their configuration handling to affect >> my coding right now!" >> This is not possible to do with a language defined pragma. > > Yes, it is; just change the build script to pass the right compiler > option. I can change the integration build script in SCM only in case I have writing permissions. OTOH, I can't invent, overload, or override a language defined pragma; sure, a malicious programmer (MP?) can still replace anything with something different. But let's assume programmers who are interested in doing programming work and who would not work as moles or as machinators, or as minimum effort maximum garbage coders. Simplifying_Assumption is a concept. How is it best represented? I think it is somewhat akin to Ada's case coverage rules. Maybe going over the top, I could suggest assume Facts(Information); begin Machine.Run(Information); end assume; This should express that for the time being, Information covers many cases, but some cases may not be Facts, expect an exception. Thus Simplifying_Assumption is promoted to a new reserved word. However, the purpose of Simplifying_Assumptions is really pragmatic, geared towards program development by completing the cases, and instructing the compiler. So a pragma might be fine.