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=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.66.229.6 with SMTP id sm6mr9936354pac.30.1382462113741; Tue, 22 Oct 2013 10:15:13 -0700 (PDT) X-Received: by 10.182.181.42 with SMTP id dt10mr233715obc.16.1382462113442; Tue, 22 Oct 2013 10:15:13 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.linkpendium.com!news.linkpendium.com!news.snarked.org!newsfeed.news.ucla.edu!usenet.stanford.edu!y3no79346868pbx.0!news-out.google.com!z6ni86859pbu.0!nntp.google.com!i2no27530260qav.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Tue, 22 Oct 2013 10:15:13 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=64.183.207.38; posting-account=zwxLlwoAAAChLBU7oraRzNDnqQYkYbpo NNTP-Posting-Host: 64.183.207.38 References: <87iowprctp.fsf@adaheads.sparre-andersen.dk> <7d18f68a-f15e-4e81-bbbe-22010c513a84@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <0eb80b2f-696e-45cd-9e6c-724ce3866f79@googlegroups.com> Subject: Re: Making sense of predicates From: "Dan'l Miller" Injection-Date: Tue, 22 Oct 2013 17:15:13 +0000 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:17504 Date: 2013-10-22T10:15:13-07:00 List-Id: On Tuesday, October 22, 2013 11:30:30 AM UTC-5, Dmitry A. Kazakov wrote: > The goal should be a leaner and more powerful type system with the presen= t > type system implemented on top of it at the library level, 100% backward > compatible. Ahhhh, you seek effectively the C++ vision, but done differently somehow (o= r else why not simply leave Ada and program in C++2011). Then, your primar= y task is not to convince people in Ada of matters related to the typing-sy= stem per se. Rather your goal is to convince people in Ada how delegating = language/compiler functionality upward to the "library level" would not suf= fer the disastrous defects plaguing C++'s metatemplate programming (MTP). = What you seek is not a better typing-system per se. What you seek is a bet= ter way of layering the compiler and extending the compiler, such as multis= tage programming (of which C++-style MTP is a poor-man's misguided inferior= -quality knock-off of a half-baked flight of fancy). [Hint: don't replica= te the C++ MTP mess; do something *entirely* different than the C++ directi= on.] You should advocate for what that multistage(-or-whatever) programmin= g feature-set would look like in Ada-refounded, act like in Ada-refounded, = enforce safety like in Ada-refounded, and so forth, preferably revealing bo= th the new utopia as well as the impeccability of the Ada2012 backward-comp= atibility. Then a feature-rich rethought typing-system is merely the first= impressive tour-de-force demonstration of such compiler extensibility. Btw, Seed7 has done some limited work in this direction, but is best though= t of as a one-off tangential demonstration of some categories of partial-so= lutions toward this compiler-extensibility goal, instead of as the only pat= h leading toward the promised land of multistage programming and compiler e= xtensibility. Of course, the set {OCaml, Camlp4, MetaOCaml} deserve a peek= as well, borrowing here & there, leaving behind their bizarreness. > P.S. Putting up such lists is a completely wasted time, as nothing will > ever happen, until somebody with the influence of Ichbiah or Taft will nu= ke > the swamp again. Your pessimism here presumes that neither Tucker Taft nor anyone else of vi= sionary influence reads comp.lang.ada, which I suspect is entirely false. = Hence, when good ideas are well-formed, they might inspire those on the ISO= standardization committee (or at AdaCore & the like) to work on such goals= .