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,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 2002:a24:6554:: with SMTP id u81-v6mr3489222itb.27.1524148103079; Thu, 19 Apr 2018 07:28:23 -0700 (PDT) X-Received: by 2002:a9d:624b:: with SMTP id i11-v6mr35682otk.3.1524148102974; Thu, 19 Apr 2018 07:28:22 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!news.uzoreto.com!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!f63-v6no405221itc.0!news-out.google.com!u64-v6ni669itb.0!nntp.google.com!k65-v6no401431ita.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Thu, 19 Apr 2018 07:28:22 -0700 (PDT) In-Reply-To: <06adad02-803a-4dc7-b5d8-f9a5d8faa3ab@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=76.113.16.86; posting-account=lJ3JNwoAAAAQfH3VV9vttJLkThaxtTfC NNTP-Posting-Host: 76.113.16.86 References: <1c73f159-eae4-4ae7-a348-03964b007197@googlegroups.com> <06a8980d-21bb-4067-b22d-7d1f89342948@googlegroups.com> <19c7a205-0a82-477b-9254-01af786f467e@googlegroups.com> <06adad02-803a-4dc7-b5d8-f9a5d8faa3ab@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: How to get Ada to ?cross the chasm?? From: Shark8 Injection-Date: Thu, 19 Apr 2018 14:28:23 +0000 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Received-Bytes: 2957 X-Received-Body-CRC: 3102416636 Xref: reader02.eternal-september.org comp.lang.ada:51631 Date: 2018-04-19T07:28:22-07:00 List-Id: On Wednesday, April 18, 2018 at 10:01:31 PM UTC-6, Dan'l Miller wrote: >=20 > But any Ada compilers that =E2=80=9Csupport=E2=80=9D Microsoft OSes out o= f the box are stuck in the Win32 era not much different than as shown in th= at cruel Ada spec above. What's truly sad is that many APIs would do a *lot* better as Ada than as C= or C++, simply because of the addition of aspects and pre/post-conditions.= (With the addition of static/disjoint subtypes [see below] following close= behind.) Type Example_Enumeration is ( Steve, Dave, Mary, Alice, Marco, Diana ); Subtype Man is Example_Enumeration with Static_Predicate =3D> Men in Steve | Dave | Marco; Procedure Shave_API( Someone : Man ); -- Or whatever, the point is we can *EASILY* model something like OpenGL's -- massive list of enumerations, with functions that accept limited subsets= . > What is especially sad is that Microsoft has gone to great lengths over t= he past 1.5 decades to make this rich object library language agnostic, des= igned for language projections to feel native in each language=E2=80=94 This is true, but I'm not sure how to address the problem. A lot of it has = to do with the limited amount of resources we have to develop Ada, due to o= ur small size, which remains small in part due to the above problem. Perhaps 95% of "what's holding us back" is the combination of the above [us= ually expressed as "lack of libraries"] and the compiler/tooling situation.