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.4 required=5.0 tests=BAYES_00,FORGED_MUA_MOZILLA autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: 103376,81bb2ce65a3240c3 X-Google-NewGroupId: yes X-Google-Attributes: gida07f3367d7,domainid0,public,usenet X-Google-Language: ENGLISH,CP1252 Received: by 10.68.236.170 with SMTP id uv10mr3537996pbc.4.1335380579355; Wed, 25 Apr 2012 12:02:59 -0700 (PDT) Path: r9ni97862pbh.0!nntp.google.com!news2.google.com!goblin1!goblin.stu.neva.ru!eternal-september.org!feeder.eternal-september.org!mx04.eternal-september.org!.POSTED!not-for-mail From: Oliver Kleinke Newsgroups: comp.lang.ada Subject: Re: What would you like in Ada202X? Date: Wed, 25 Apr 2012 21:02:57 +0200 Organization: A noiseless patient Spider Message-ID: References: <3637793.35.1335340026327.JavaMail.geo-discussion-forums@ynfi5> Mime-Version: 1.0 Injection-Date: Wed, 25 Apr 2012 19:02:58 +0000 (UTC) Injection-Info: mx04.eternal-september.org; posting-host="r9vWwZGRqWnz4jaCL7CcWg"; logging-data="2911"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/wUc++FaRO3v00sJy9kXQj+/wtm8w67YE=" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.3) Gecko/20120329 Icedove/10.0.3 In-Reply-To: <3637793.35.1335340026327.JavaMail.geo-discussion-forums@ynfi5> Cancel-Lock: sha1:6ep26+DODNet960MI2q3sGprkW0= Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit Date: 2012-04-25T21:02:57+02:00 List-Id: Greetings, > 3) Multiple dispatch > > -- Martin That will overcomplicate things. You'd end up with a truck load of implementations. > 4) Full multiple inheritance. Same mess as in C++? > 5) Proper constructors and destructors (for all types), enforced, > exception-safe with roll-back. Roll-back what? Side-effects? > 11) Package interfaces, transitive "use." I.e. an ability to make things > visible in some package visible in another without repeating all its with > and use clauses. And, of course, "use" should imply "with" where > applicable. This is a bad, bad, bad idea. Would totally clutter everything and make everything unreadable. I think the current system is already liberal enough, and I like to restrict myself to localized 'use' clauses - if any! - for the sake of readability. > 13) Forgot the most important thing: contracted exceptions There exists an interesting paper on that subject.[1] > 0) Which features do you think can be dropped from Ada? I don't think features _must_ be dropped, but Ada could certainly benefit if there was a chance for competitive compilers to emerge. Otherwise the segmentation will continue. (While keeping backward compatibility in mind.) >> 0) Which features do you think can be dropped from Ada? > - Stubs, i.e. "is separate". Subunits of compilation units are one of the most important features when it comes to portability and modularization, you must be kidding. > - Distributed Annex Quote: "fuck you.. DSA is Ada's killer feature" > Particularly interesting, since now Microsoft is popularizing > partial classes. partial classes are totally different from subunits. Partial classes are needed for Microsoft's automated code-generation. Partial classes are offensive in that they allow arbitrary extension of classes _anywhere_. >> 2) parallel loops / functions > Array support in the direction of utilizing parallel > micro-micro-processing powers. Already present in GNAT, implicitly though. What I would like to see in the standard is a modifier for saturation arithmetic that can be added to any scalar type definition. Right now there is the option for a "[..] nonstandard real type [that] might have an asymmetric or unsigned base range, or its predefined operations might wrap around or �saturate� rather than overflow [..]" RM-3-5-6 (8) ex.: type Saturated is new saturated Integer range 0 .. 255; -- or something similar. This would be very easy to implement. Cheers, Oliver ---- [1] - http://dl.acm.org/citation.cfm?id=357094.357100