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,38159b1b5557a2e7 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2004-01-27 12:55:43 PST Path: archiver1.google.com!news2.google.com!newsfeed2.dallas1.level3.net!news.level3.com!zeus.visi.com!green.octanews.net!news-out.octanews.net!news-out.visi.com!petbe.visi.com!newspeer.monmouth.com!newsfeed.mathworks.com!nntp.TheWorld.com!not-for-mail From: Robert A Duff Newsgroups: comp.lang.ada Subject: Re: Standard Ada Preprocessor Date: 27 Jan 2004 15:55:41 -0500 Organization: The World Public Access UNIX, Brookline, MA Message-ID: References: <400BDB7C.40100@noplace.com> <400D2150.6000705@noplace.com> <400E72F9.8060501@noplace.com> <100upo7ln5e3k59@corp.supernews.com> <400FC8E8.2040100@noplace.com> <4011127C.4030801@noplace.com> <101377e54car5cc@corp.supernews.com> NNTP-Posting-Host: pip1-5.std.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: pcls4.std.com 1075236941 22857 192.74.137.185 (27 Jan 2004 20:55:41 GMT) X-Complaints-To: abuse@TheWorld.com NNTP-Posting-Date: Tue, 27 Jan 2004 20:55:41 +0000 (UTC) User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 Xref: archiver1.google.com comp.lang.ada:4933 Date: 2004-01-27T15:55:41-05:00 List-Id: "Warren W. Gay VE3WWG" writes: > The "Ada phylosophy" works until... I'm rather skeptical of talk about "Ada philosophy". I agree with you and MDC that the issue is a very practical one. It's all well and good to recommend encapsulating system dependencies in package bodies and so forth. But you still need some mechanism to select which body to use in each case. I don't see any advantage to using make-file hackery for that, over using #ifdef's. The fact that some C programs are ugly due to overuse of #ifdefs is not a good reason to outlaw preprocessors. First of all, scattering #ifdefs all over the place is not necessary, even in C, given a good design. Second, if Ada had a preprocessor, it wouldn't be used as in C: to define enumeration types, to write pragma-inline functions, to write generics. It would be used sparingly. > I would just like people to look at some of the "practical" > issues without resorting to quoting "ivory tower" notions. I agree. > I am not against any of these techniques. What I am against > is the notion that "no, we don't do it that way because it > might get abused". I agree. The language designer's job is to prevent mistakes, not to prevent deliberate abuse. - Bob