comp.lang.ada
 help / color / mirror / Atom feed
From: anon <anon@anon.org>
Subject: Re: Ada 2012: In-out parameters for functions
Date: Fri, 03 May 2013 05:48:29 -0500
Date: 2013-05-03T05:48:29-05:00	[thread overview]
Message-ID: <UYadnS4eOq5gCB7MnZ2dnUVZ_jqdnZ2d@supernews.com> (raw)
In-Reply-To: 7704abab-86f2-4edc-ad4b-b3d4e70004fb@googlegroups.com

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
> 

  parent reply	other threads:[~2013-05-03 10:48 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-01 16:28 Ada 2012: In-out parameters for functions dptrash
2013-05-01 17:27 ` Shark8
2013-05-01 19:04 ` Yannick Duchêne (Hibou57)
2013-05-01 19:37   ` Dmitry A. Kazakov
2013-05-01 19:58     ` Yannick Duchêne (Hibou57)
2013-05-02  6:41       ` Dmitry A. Kazakov
2013-05-02  7:11         ` Yannick Duchêne (Hibou57)
2013-05-01 23:37 ` Peter C. Chapin
2013-05-03 10:48 ` anon [this message]
2013-05-03 11:04   ` Simon Clubley
2013-05-03 11:32   ` Simon Wright
2013-05-03 11:42   ` Yannick Duchêne (Hibou57)
2013-05-03 11:54     ` Yannick Duchêne (Hibou57)
2013-05-03 23:29       ` Randy Brukardt
2013-05-04  1:02         ` Adam Beneschan
2013-05-05  5:16           ` Randy Brukardt
2013-05-05 10:24         ` Niklas Holsti
2013-05-05 11:11           ` Yannick Duchêne (Hibou57)
2013-05-05 12:52             ` Bill Findlay
2013-05-05 15:09               ` Niklas Holsti
2013-05-05 19:23                 ` Yannick Duchêne (Hibou57)
2013-05-05 20:37                   ` Niklas Holsti
2013-05-07  0:30                 ` Randy Brukardt
2013-05-07  2:36                   ` Yannick Duchêne (Hibou57)
2013-05-05 19:45               ` Yannick Duchêne (Hibou57)
2013-05-06 15:40               ` Adam Beneschan
2013-05-06 16:17                 ` Bill Findlay
2013-05-06 16:47                   ` Adam Beneschan
2013-05-06 18:43                     ` Bill Findlay
2013-05-07  0:07                     ` Dennis Lee Bieber
2013-05-07  2:34                       ` Yannick Duchêne (Hibou57)
2013-05-07  0:26             ` Randy Brukardt
2013-05-06 15:26           ` Adam Beneschan
2013-05-07  0:36             ` Randy Brukardt
2013-05-07  3:59           ` Yannick Duchêne (Hibou57)
2013-05-07  4:13             ` Yannick Duchêne (Hibou57)
2013-05-07 11:52             ` Yannick Duchêne (Hibou57)
2013-05-03 11:45   ` AdaMagica
2013-05-03 23:54     ` Randy Brukardt
2013-05-04  6:58       ` J-P. Rosen
2013-05-04  7:21         ` Dmitry A. Kazakov
2013-05-04 17:58           ` J-P. Rosen
2013-05-04  7:40         ` Yannick Duchêne (Hibou57)
2013-05-04  8:05           ` Simon Wright
2013-05-04 17:55           ` J-P. Rosen
2013-05-04  0:40   ` Keith Thompson
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox