CVS difference for ai05s/ai05-0245-1.txt

Differences between 1.1 and version 1.2
Log of other versions for file ai05s/ai05-0245-1.txt

--- ai05s/ai05-0245-1.txt	2011/03/10 23:30:58	1.1
+++ ai05s/ai05-0245-1.txt	2011/04/01 02:36:53	1.2
@@ -1,4 +1,4 @@
-!standard 0.3(57.11/2)                             11-03-10    AI05-0245-1/01
+!standard 0.3(57.11/2)                             11-03-31    AI05-0245-1/02
 !class Amendment 11-03-10
 !status Amendment 2012 11-03-10
 !status work item 11-03-10
@@ -17,7 +17,8 @@
 
 !proposal
 
-Ask John Barnes to write a nice introduction.
+Task John Barnes with writing a nice introduction - his effort can be found
+in the !wording section.
 
 !wording
 
@@ -40,7 +41,7 @@
 * The concept of assertions introduced in the 2005 edition is extended
 with the ability to specify preconditions and postconditions for subprograms,
 and invariants for private types. The concept of constraints in defining
-subtypes is supplemented with subtype predicates which enable subsets to be
+subtypes is supplemented with subtype predicates that enable subsets to be
 specified other than as simple ranges. These properties are all indicated
 using aspect specifications. See clauses 3.2.4, 13.3.2, and 13.3.3.
 
@@ -83,10 +84,11 @@
 
 !discussion
 
-We're not making any changes to the language summary.
+We're not making any changes to the Language Summary, only to the
+Language Changes section. The summary doesn't need to mention any of the new
+features, and everything else is still true since we have been careful to
+keep compatibility.
 
-[Should we make any changes? Do we need to? - Editor.]
-
 !corrigendum 0.3(57.11/2)
 
 @dinsa
@@ -112,7 +114,7 @@
 @xbullet<The concept of assertions introduced in the 2005 edition is extended
 with the ability to specify preconditions and postconditions for subprograms,
 and invariants for private types. The concept of constraints in defining
-subtypes is supplemented with subtype predicates which enable subsets to be
+subtypes is supplemented with subtype predicates that enable subsets to be
 specified other than as simple ranges. These properties are all indicated
 using aspect specifications. See clauses 3.2.4, 13.3.2, and 13.3.3.>
 
@@ -208,5 +210,368 @@
 I also found a bunch of incorrect clause references (and one missing one), all
 of which I fixed. (It's pretty obvious from the text to which clauses you are
 referring.)
+
+****************************************************************
+
+From: Bob Duff
+Sent: Sunday, March 20, 2011  11:20 AM
+
+> > Herewith a draft new lump of text for incorporation in the
+> > Introduction.
+>
+> Thanks for getting this done in a timely fashion. (For the rest of
+> you, especially Ed, Bob, and Tucker, how are you doing with your
+> homework?? :-)
+
+Here's part of it.  ;-)
+
+> But that probably would probably rile up the people who think that
+> ever mentioning the real date of 2007 is blasphony.
+
+"blasphony" is a phunny typo.
+
+>... So probably it would be
+> better to just mention the document by number:
+>
+> "The following significant changes with respect to the 1995 edition as
+> amended by Amendment 1 are incorporated:"
+
+John's text looks fine to me.  Just one comment:
+add "," before the (only occurrence of) "which".
+
+Existing sections of the AI (other than !wording) need to be updated.
+
+Intro(60/2):
+
+60/2       !topic Title summarizing comment
+           !reference Ada 2005 RMss.ss(pp)
+           !from Author Name yy-mm-dd
+
+Section 1: Search for "1995" and "2005", and reword accordingly.
+Do you need me to type it all in?  Seems like it could just be a set of
+editorial changes.
+
+I suggest limiting the verbosity, e.g. change:
+
+39.d/3     This is not part of the definition of the language, and does not
+          appear in the Ada 95, Ada 2005, or Ada 2012 RM.
+
+to:
+
+39.d/3     This is not part of the definition of the language, and does not
+          appear in the Ada RM.
+
+I don't see any value in listing out the various version numbers/years.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Tuesday, March 22, 2011  1:13 PM
+
+...
+> Existing sections of the AI (other than !wording) need to be updated.
+
+Could you be specific? The AI doesn't contain anything significant other than
+the !wording, and I created all of those when I made this AI. I'm not a mind
+reader...
+
+> Intro(60/2):
+>
+> 60/2       !topic Title summarizing comment
+>            !reference Ada 2005 RMss.ss(pp)
+>            !from Author Name yy-mm-dd
+>
+> Section 1: Search for "1995" and "2005", and reword accordingly.
+> Do you need me to type it all in?  Seems like it could just be a set
+> of editorial changes.
+
+I did that when I created this edition years ago. If I missed anything that
+should be changed, then I need to know. (Other than the above.) There are a lot
+of things that *shouldn't* be changed, IMHO. Single section references with a
+short indication of a change are good enough if you find any other changes.
+
+> I suggest limiting the verbosity, e.g. change:
+>
+> 39.d/3     This is not part of the definition of the language, and does not
+>           appear in the Ada 95, Ada 2005, or Ada 2012 RM.
+>
+> to:
+>
+> 39.d/3     This is not part of the definition of the language, and does not
+>           appear in the Ada RM.
+>
+> I don't see any value in listing out the various version
+> numbers/years.
+
+Maybe not, but I see even less value in changing AARM notes that are already
+correct. That's essentially busywork, and I have too much of that to do as it
+is.
+
+****************************************************************
+
+From: Bob Duff
+Sent: Thursday, March 31, 2011  12:11 PM
+
+> ...
+> > Existing sections of the AI (other than !wording) need to be updated.
+>
+> Could you be specific? The AI doesn't contain anything significant
+> other than the !wording, and I created all of those when I made this
+> AI. I'm not a mind reader...
+
+In !proposal:
+
+"Ask John Barnes to write a nice introduction." --> "See wording."
+
+Delete the !discussion:
+
+    We're not making any changes to the language summary.
+
+    [Should we make any changes? Do we need to? - Editor.]
+
+> > Intro(60/2):
+> >
+> > 60/2       !topic Title summarizing comment
+> >            !reference Ada 2005 RMss.ss(pp)
+> >            !from Author Name yy-mm-dd
+> >
+> > Section 1: Search for "1995" and "2005", and reword accordingly.
+> > Do you need me to type it all in?  Seems like it could just be a set
+> > of editorial changes.
+>
+> I did that when I created this edition years ago. If I missed anything
+> that should be changed, then I need to know. (Other than the above.)
+> There are a lot of things that *shouldn't* be changed, IMHO. Single
+> section references with a short indication of a change are good enough
+> if you find any other changes.
+
+OK, I did a quick search, and I don't see anything wrong other than the above.
+
+> > I suggest limiting the verbosity, e.g. change:
+> >
+> > 39.d/3     This is not part of the definition of the language, and does
+> not
+> >           appear in the Ada 95, Ada 2005, or Ada 2012 RM.
+> >
+> > to:
+> >
+> > 39.d/3     This is not part of the definition of the language, and does
+> not
+> >           appear in the Ada RM.
+> >
+> > I don't see any value in listing out the various version
+> > numbers/years.
+>
+> Maybe not, but I see even less value in changing AARM notes that are
+> already correct. That's essentially busywork, and I have too much of
+> that to do as it is.
+
+OK.  Remember to do it when you do Ada 2020 -- you'll need to change them
+anyway.  ;-)
+
+****************************************************************
+
+From: Bob Duff
+Sent: Monday, March 21, 2011  2:16 PM
+
+> Bob Duff:
+>
+> AI05-0245-1: Send comments on proposed wording, read the rest of the
+> Introduction for possible changes. [Phone meeting #43A.]
+
+OK, I read the entire Introduction.  I'm going with "If it ain't broke, don't
+fix it."  There are various half-truths and lies, which we're not going to fix.
+Introduction(10): "Languages that require over-elaborate compilers ..." Bwahaha!
+
+This completes my homework assignment.
+
+>                                 Introduction
+>
+>
+> 1     This is the Ada Reference Manual.
+>
+> 2     Other available Ada documents include:
+>
+> 3/2     * Ada 95 Rationale. This gives an introduction to the new features of
+>       Ada incorporated in the 1995 edition of this Standard, and explains the
+>       rationale behind them. Programmers unfamiliar with Ada 95 should read
+>       this first.
+>
+> 3.1/2   * Ada 2005 Rationale. This gives an introduction to the changes and
+>       new features in Ada 2005 (compared with the 1995 edition), and explains
+>       the rationale behind them. Programmers should read this rationale before
+>       reading this Standard in depth.
+
+Why doesn't it mention the Ada 83 Rationale?
+
+Replace Introduction(3/2,3.1/2) with:
+
+      * Ada 2012 Rationale. This gives an introduction to the changes and
+      new features in Ada 2012, and explains the rationale behind them.
+      Programmers should read this rationale before reading this Standard
+      in depth. Ada 83, 95, and 2005 Rationales are also available.
+
+> Changes
+>
+> 72    The International Standard is the same as this version of the Reference
+> Manual, except:
+...
+> 77.2/2   * The "Using this version of the Ada Reference Manual" clause is not
+>       included in the International Standard.
+
+Add after Introduction(77.2/2):
+
+Paragraph numbers are not included in the International Standard.
+
+> Using this version of the Ada Reference Manual
+>
+> 77.3/3 This document has been revised with the corrections specified
+> in Technical Corrigendum 1 (ISO/IEC 8652:1995/COR.1:2001), Amendment 1
+> (ISO/IEC 8652/AMD 1:2007), and Amendment 2 (ISO/IEC 8652/AMD 2:201z).
+> In addition, a variety of editorial errors have been corrected.
+>
+> 77.4/3 Changes to the original 8652:1995 can be identified by the
+> version number following the paragraph number. Paragraphs with a
+> version number of /1 were changed by Technical Corrigendum 1 or were
+> editorial corrections at that time, while paragraphs with a version
+> number of /2 were changed by Amendment 1 or were more recent editorial
+> corrections, and paragraphs with a version number of /3 were changed
+> by Amendment 2 or were still more recent editorial corrections.
+> Paragraphs not so marked are unchanged by Amendment 1, Amendment 2,
+> Technical Corrigendum 1, or editorial corrections. Paragraph numbers
+> of unchanged paragraphs are the same as in the original Ada Reference
+> Manual. In
+
+No, they're not.  They're the same as the original Ada 95 RM, not the original
+Ada 83 RM.
+
+> addition, some versions of this document include revision bars near
+> the paragraph numbers. Where paragraphs are inserted, the paragraph
+> numbers are of the form pp.nn, where pp is the number of the preceding
+> paragraph, and nn is an insertion number. For instance, the first
+> paragraph inserted after paragraph 8 is numbered 8.1, the second
+> paragraph inserted is numbered 8.2, and so on. Deleted paragraphs are
+> indicated by the text This paragraph was deleted. Deleted paragraphs
+> include empty paragraphs that were numbered in the original Ada Reference
+> Manual.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Tuesday, March 22, 2011  12:59 AM
+
+> > AI05-0245-1: Send comments on proposed wording, read the rest of the
+> > Introduction for possible changes. [Phone meeting #43A.]
+>
+> OK, I read the entire Introduction.  I'm going with "If it ain't
+> broke, don't fix it."  There are various half-truths and lies, which
+> we're not going to fix.
+> Introduction(10): "Languages that require over-elaborate compilers
+> ..."
+> Bwahaha!
+
+That text is actually from the original Ada 83 standard (1.3(5)); apparently the
+Ada 95 team didn't feel like removing it. And that's funny, because if there was
+any valid complaint about Ada 83, it was that it required an "overly elaborate
+compiler".
+
+The point of having you read this was to get rid of any "lies". Especially
+technical lies. "Half-truths" I don't care about!
+
+> This completes my homework assignment.
+
+Are you sure there aren't any technical "lies"? I don't care about change the
+"design goals" section, but if the "language overview" has any lies, they ought
+to be fixed.
+
+...
+> > 3/2     * Ada 95 Rationale. This gives an introduction to
+...
+> Why doesn't it mention the Ada 83 Rationale?
+
+Because the Ada 95 document I started with didn't mention the Ada 83 Rationale.
+
+> Replace Introduction(3/2,3.1/2) with:
+>
+>       * Ada 2012 Rationale. This gives an introduction to the changes and
+>       new features in Ada 2012, and explains the rationale behind them.
+>       Programmers should read this rationale before reading this Standard
+>       in depth. Ada 83, 95, and 2005 Rationales are also available.
+
+I didn't previously mention this Ada 2012 Rationale here, because we've never
+talked about such a document at the ARG level (unlike the situation with
+previous versions of the standard). Moreover, we don't seem to be anywhere near
+having such a document available (John has only made a draft of one chapter so
+far, so far I know), while this document is going out to public distribution
+very soon (we hope). I don't want to be making false promises. Not sure what to
+do here.
+
+****************************************************************
+
+From: Bob Duff
+Sent: Thursday, March 31, 2011  12:05 PM
+
+> > OK, I read the entire Introduction.  I'm going with "If it ain't
+> > broke, don't fix it."  There are various half-truths and lies, which
+> > we're not going to fix.
+> > Introduction(10): "Languages that require over-elaborate compilers
+> > ..."
+> > Bwahaha!
+>
+> That text is actually from the original Ada 83 standard (1.3(5));
+> apparently the Ada 95 team didn't feel like removing it.
+
+Right, that's why I said "we're not going to fix".
+
+>... And that's funny, because if
+> there was any valid complaint about Ada 83, it was that it required an
+>"overly elaborate compiler".
+
+That's what I meant by "Bwahaha!".  ;-)
+
+> The point of having you read this was to get rid of any "lies".
+> Especially technical lies. "Half-truths" I don't care about!
+>
+> > This completes my homework assignment.
+>
+> Are you sure there aren't any technical "lies"?
+
+Well, I read it all, and didn't notice anything other than what I reported.
+
+For compatibility reasons, we didn't make any major changes, other than adding
+new stuff.  So it's not surprising if the language summary is correct (but
+incomplete -- John is fixing that part).
+
+>... I don't care about change
+> the "design goals" section, but if the "language overview" has any
+>lies,  they ought to be fixed.
+>
+> ...
+> > > 3/2     * Ada 95 Rationale. This gives an introduction to
+> ...
+> > Why doesn't it mention the Ada 83 Rationale?
+>
+> Because the Ada 95 document I started with didn't mention the Ada 83
+> Rationale.
+
+Maybe it should.  No big deal.
+
+> > Replace Introduction(3/2,3.1/2) with:
+> >
+> >       * Ada 2012 Rationale. This gives an introduction to the changes and
+> >       new features in Ada 2012, and explains the rationale behind them.
+> >       Programmers should read this rationale before reading this Standard
+> >       in depth. Ada 83, 95, and 2005 Rationales are also available.
+>
+> I didn't previously mention this Ada 2012 Rationale here, because
+> we've never talked about such a document at the ARG level (unlike the
+> situation with previous versions of the standard). Moreover, we don't
+> seem to be anywhere near having such a document available (John has
+> only made a draft of one chapter so far, so far I know), while this
+> document is going out to public distribution very soon (we hope). I
+> don't want to be making false promises. Not sure what to do here.
+
+I suggest you do nothing, then.  We can issue AI2012-000NN-1, which adds wording
+that mentions the Ada 2012 Rationale, if and when it exists.
 
 ****************************************************************

Questions? Ask the ACAA Technical Agent