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=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,dd23af7a2f4f9e7c X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2004-01-05 08:19:22 PST Path: archiver1.google.com!news2.google.com!news.maxwell.syr.edu!newshub.sdsu.edu!small1.nntp.aus1.giganews.com!border1.nntp.aus1.giganews.com!intern1.nntp.aus1.giganews.com!nntp.giganews.com!nntp.comcast.com!news.comcast.com.POSTED!not-for-mail NNTP-Posting-Date: Mon, 05 Jan 2004 10:19:20 -0600 Date: Mon, 05 Jan 2004 11:19:19 -0500 From: "Robert I. Eachus" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax) X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Re: Mutable parameter of a function (long ago was: Re: What evil would happen?) References: In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Message-ID: NNTP-Posting-Host: 24.34.214.193 X-Trace: sv3-ZQ7Kh6qAGc2oBDxjmYia9veCNDOKsPqwQKfHBRyVpA4sHIAa4SgPJvLugeQjlcXxUPX5fC5k7rmp7+/!ZYcMvuxd88b+8lrJSvRgb1p04pjndyZHYMt7Gu/ysNCgqu3dhMyvAmag8vAODQ== X-Complaints-To: abuse@comcast.net X-DMCA-Complaints-To: dmca@comcast.net 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.1 Xref: archiver1.google.com comp.lang.ada:4122 Date: 2004-01-05T11:19:19-05:00 List-Id: Dmitry A. Kazakov wrote: > Error is a result of a decision. Though the reverse is not true. Not > every decision results in an error. I have to agree with Alexandre here. A lot of effort went into making informed decisions on these topics. Some were easy, and the unanimous concensus reflected that. Others involved tradeoffs and required lots of debate and discussion. Finally, a few issues were clearly about style, and there was no right or wrong involved. I put the decision on function parameters in the last group, along with the decision (for Ada 9X) on changing the underscore rule for Ada identifiers. Everyone understood the issues, and for the in out function parameters DEC Ada had a pragma that created "value returning procedures" as a workaround, so there was real experience with using an Ada version that allowed it. The concensus was strongly in favor of retaining the Ada 83 rule. This was at the Ada 9X meeting in Salem, MA, and at that meeting we took a final unanimous vote that everyone present (technically, every country represented) was comfortable with all the decisions reached there. Personally I voted for in out parameters for functions. But when that vote was over, I went and helped design a random number generator interface that passed the generator as an in parameter. The issue had been discussed, everyone knew that the effect on the final standard would impact the RNG package, and that the vote for the status quo would continue to allow functions with side effects. (The option of "fixing" functions so that side effects were not allowed was considered, and dismissed quickly. A different decision was made for functions in protected objects, which sometimes requires nesting of protected types.) Everyone--including me--was comfortable with the result. -- Robert I. Eachus "The war on terror is a different kind of war, waged capture by capture, cell by cell, and victory by victory. Our security is assured by our perseverance and by our sure belief in the success of liberty." -- George W. Bush