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 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!mx05.eternal-september.org!feeder.eternal-september.org!news.glorb.com!border3.nntp.dca.giganews.com!Xl.tags.giganews.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local2.nntp.dca.giganews.com!nntp.supernews.com!news.supernews.com.POSTED!not-for-mail NNTP-Posting-Date: Fri, 03 May 2013 05:48:28 -0500 Newsgroups: comp.lang.ada Subject: Re: Ada 2012: In-out parameters for functions From: anon References: <7704abab-86f2-4edc-ad4b-b3d4e70004fb@googlegroups.com> User-Agent: Xnews/5.04.25 Message-ID: Date: Fri, 03 May 2013 05:48:29 -0500 X-Trace: sv3-w7MwjvvKsspWgxv46CzRlQ2k65Hx/rlyRKyZRoRir2PjhYeweRc7vBvyRwMEi5xPiz96uoFuNwZ4pHh!gqc1YqyXdKkyhtyrgrwbMf6f+dVq6LaVeeNJdnDpvnMZ926uPmIp25pYyIM3RF/zsNjdnw05tios!3JFVYQAm X-Complaints-To: www.supernews.com/docs/abuse.html X-DMCA-Complaints-To: www.supernews.com/docs/dmca.html X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.40 X-Original-Bytes: 3469 Xref: news.eternal-september.org comp.lang.ada:15317 Date: 2013-05-03T05:48:29-05:00 List-Id: For Ada 83 functions the DOD required a language that contains a true function and not the C like function. But since 1998 when the DOD drop the Ada requirement, the Ada maintainers were allowed to alter the definition of a function. Since then one or more of Ada maintainers have decided to add number of "C" like syntax and/or coding to Ada. An example is the "conditional statements" another is the the "C" function/procedure call with both having in out parameters. A number of old "C" compilers ( 1980..1990s from Microsoft and IBM ) allowed the "in out" parameters for C functions. Another change is the "Copy by Reference" has been replaced by "Copy by Type". This change alone defeats the purpose of the "limited private" used in Generics compilation units aka external re-usable libraries which forces existing libraries to be re-written. So, many companies that used Generic libraries are now leaving Ada for a language that does not alter a major language feature after 25 plus years of the language existence. Also, Robert Dewar the CEO at Adacore and the main maintainer at the movement for Ada stated that they would modify Ada to help increase the number of Ada programmers. Robert Dewar as CEO has to look at Adacore profits and not just designs a better language which means that Ada may suffer due to Adacore's profitability. But what most programmers want is the best language with the best features that are not features that can lead to erroneous error in coding or execution. And both functions with "in out" parameters and "conditional statements" can cause erroneous coding which leads to erroneous executions. And for that reason these features should have never been added to Ada. This means Ada has stated going down the path of previous languages like PL/1, C, Lisp and even Java. So, programmers are looking for the next language that maintainers will not just adopt the bad designs from previous language maintainers. dptrash@arcor.de wrote in news:7704abab-86f2-4edc-ad4b-b3d4e70004fb@googlegroups.com: > Why does Ada 2012 have in-out parameters for functions? > > Quote from the book 'Ada 2005 Rationale' (page 4): "[..] Indeed many > other changes were rejected as really unnecessary. These include old > chestnuts such as in out and out parameters for functions (ugh), > [..]". > > So, when do I use functions or procedures. Functions have return > values. Any other differences? > > - Dennis >