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.1 required=5.0 tests=BAYES_00,FREEMAIL_FROM, FROM_STARTS_WITH_NUMS,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,cdf9d37fddaced23,start X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 1994-09-09 02:20:59 PST Path: nntp.gmd.de!xlink.net!slsv6bt!slbh01.bln.sel.alcatel.de!rcvie!Austria.EU.net!newsfeed.ACO.net!paladin.american.edu!auvm!COMPUSERVE.COM!73672.2025 Comments: Gated by NETNEWS@AUVM.AMERICAN.EDU Newsgroups: comp.lang.ada Message-ID: <940908231244_73672.2025_DHR48-1@CompuServe.COM> Date: Thu, 8 Sep 1994 19:12:45 EDT Sender: Ada programming language From: Ken Garlington <73672.2025@COMPUSERVE.COM> Subject: Ada 9X features Comments: To: "comp.lang.ada" Date: 1994-09-08T19:12:45-04:00 List-Id: I would disagree with Bevin Brett's assessment of Ada 9X requirements bloat in one area: the ability to have access values that don't reference the heap. We have a number of constant data structures where the use of access values greatly simplifies the data description and the corresponding algorithms. In the "good" old JOVIAL days, it was pretty simple to get the compiler/linker to build this as a static structure in ROM. (From what I understand, this can also be done in C.) We can use Ada 83 access types, which are much clearer to read and understand than the JOVIAL equivalent. However, we just can't afford the elaboration time, nor the extra memory, needed to copy these large data structure into the heap. So, we have to do nasty tricks with UNCHECKED_CONVERSION and SYSTEM.ADDRESS to get the data structure the way we want. When we, as a most decidedly non-academic group of Ada practitioners, were asked what we would want in Ada 9X, we wrote MRs that discussed our problems in this area, fully expecting to be told, "Oh, there's a simple way to do that in Ada 83 - you just..." or "Well, you just don't have an Ada mindset..." However, neither of these happened. Even more to our surprise, an implementation has been proposed for Ada 9X which looks like it will work perfectly. I can't say that I will use everything in Ada 9X. I can't defend everything that's been added. But I hope that those features that were added based on inputs from the "grunts" in the field are treated with the same importance as those proposed by the vendors, even if they aren't quite as interesting...