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-02-10 09:59:14 PST Path: archiver1.google.com!news2.google.com!news.maxwell.syr.edu!cyclone.bc.net!news.uunet.ca!nf3.bellglobal.com!nf1.bellglobal.com!nf2.bellglobal.com!news20.bellglobal.com.POSTED!not-for-mail From: "Warren W. Gay VE3WWG" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax) X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Language Design (was Standard Ada Preprocessor) References: <400BD4B5.6000307@noplace.com> <400BDB7C.40100@noplace.com> <400D2150.6000705@noplace.com> <400E72F9.8060501@noplace.com> <100upo7ln5e3k59@corp.supernews.com> <400FC8E8.2040100@noplace.com> <_JSdna166JuxFo3dRVn-hg@comcast.com> <401115B7.5020205@noplace.com> <1lERb.30247$zj7.21695@newsread1.news.pas.earthlink.net> In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Message-ID: Date: Tue, 10 Feb 2004 12:45:00 -0500 NNTP-Posting-Host: 198.96.223.163 X-Complaints-To: abuse@sympatico.ca X-Trace: news20.bellglobal.com 1076435045 198.96.223.163 (Tue, 10 Feb 2004 12:44:05 EST) NNTP-Posting-Date: Tue, 10 Feb 2004 12:44:05 EST Organization: Bell Sympatico Xref: archiver1.google.com comp.lang.ada:5403 Date: 2004-02-10T12:45:00-05:00 List-Id: stephen.freeman9 wrote: > This argument about C (and D) is very interesting - I have been working on > Safety related work (Uk Defstan SIL 3/ Sil 4 software and DO178b level a) > for flying aircraft. We use Ada (Spark Ada at that) to develop code. > However the world in general knows C not Ada. D helps to strengthen C as > does Misra (see Misra 2 for latest invocation) but as said - what is > lacking is definition of ranges (and strong typing) . A possible solution > I'm working on is "E" for want of a more novel name. This should look like > C but ask the programmer to define typedef's for each logically different > type s/he is using and as a comment specify the ranges that that is valid > for. It then needs a pre-processor to parse that to check for > inconsistancies. (perhaps convert it to Ada?) For my taste, there is too much interest in creating new languages that look like C. I am OK with borrowing successful concepts from any language (if it makes sense), but to me D is just an improved C, just like Java is a flavour of C++, and C# yet another flavour. IMO, it would be better for the designer to step back from experienace in several languages (not just the C/C++/C#/Java camp) and look at the problems that the language is designed to solve. Learn from the ancestors, but some small subset of those languages shouldn't dictate how the new one gets defined. IOW, the design effort shouldn't be stated as "a better version of C" ;-) What that kind of statement effectively says is that C is so good that we should use that as a starting point for improving that model. I would rather "they" examine the questions: what has C done well? What has PASCAL done well? What has Modula-3 done well? What has Ada done well? What has done well? Take away the winning concepts and use only the concepts as a basis for design. Surely the C string handling and arrays in general is flawed by the lack of range constraints. Can "they" not improve upon that? Well, no: not if their mandate is a better C. ;-) -- Warren W. Gay VE3WWG http://ve3wwg.tk