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-Thread: a07f3367d7,20280f498071efd3 X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news4.google.com!news1.google.com!newsfeed2.dallas1.level3.net!news.level3.com!bloom-beacon.mit.edu!newsswitch.lcs.mit.edu!nntp.TheWorld.com!not-for-mail From: Robert A Duff Newsgroups: comp.lang.ada Subject: Re: Software Quality in Science Date: Wed, 10 Feb 2010 11:37:59 -0500 Organization: The World Public Access UNIX, Brookline, MA Message-ID: References: <1198a288-b013-45a8-907f-7fe227e6294e@m27g2000prl.googlegroups.com> <04185bf3-f83a-4fbe-b380-c6d8aa4105e6@w27g2000pre.googlegroups.com> <4b720550$0$7624$9b4e6d93@newsspool1.arcor-online.net> NNTP-Posting-Host: shell01.theworld.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: pcls6.std.com 1265819865 2482 192.74.137.71 (10 Feb 2010 16:37:45 GMT) X-Complaints-To: abuse@TheWorld.com NNTP-Posting-Date: Wed, 10 Feb 2010 16:37:45 +0000 (UTC) User-Agent: Gnus/5.1008 (Gnus v5.10.8) Emacs/21.3 (irix) Cancel-Lock: sha1:Nw2frvRrvBu9pGPa5RaXw3lYXjA= Xref: g2news1.google.com comp.lang.ada:9094 Date: 2010-02-10T11:37:59-05:00 List-Id: Stephen Leake writes: > Georg Bauhaus writes: >> His arguments still seem based on studies from the mid 1990s. >> A study is something at least. Is there anything in the Tokeneer >> data that could serve as a basis for a comparison? >> What failure modes might Spark add? I don't know if you'd call this a "failure mode", but SPARK has heavy restrictions. For example, recursion is not allowed. If I'm writing a compiler, I _will_ be using recursion, because languages have recursive features (expressions contain subexpressions, etc). If the language doesn't support recursion directly, I will have to implement it myself, using an explicit stack. That's error prone, compared to using recursion in Ada. So I wouldn't want to write a compiler in SPARK. On the other hand, if you don't need recursion and various other features, then SPARK is an excellent choice. > Brain pain, for one. Understanding how to use Ada well is an order of > magnitude harder than understanding how to use C; I suspect SPARK is > another large increase (I've only looked into it lightly, never tried > to seriously use it). > > I suspect this is one reason Ada has failed to take over the > programming space; you have to be a really good programmer to fully > benefit from it, and it's just not worth it for a mediocre programmer. I'm not sure that's true. McCormick's paper about toy trains says otherwise (students were able to produce working code in Ada, but not in C, even with extra help in the C case). It's true that Ada is a big language, but a lot of it can be safely ignored. There's no need for an Ada programmer to understand the overload resolution rules, for example. - Bob