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

Differences between 1.11 and version 1.12
Log of other versions for file ai05s/ai05-0215-1.txt

--- ai05s/ai05-0215-1.txt	2011/04/30 07:28:36	1.11
+++ ai05s/ai05-0215-1.txt	2011/05/12 07:03:52	1.12
@@ -1,8 +1,10 @@
-!standard  9.5(10-18/3)                            11-04-28    AI05-0215-1/08
-!standard  9.5.4(3/3)
-!standard  9.5.4(5/3)
-!standard  9.5.4(5.1/3)
+!standard  9.5(9)                            11-05-11    AI05-0215-1/09
+!standard  9.5.4(3)
+!standard  9.5.4(5)
+!standard  E.2.2(14)
 !class Amendment 11-04-28
+!status Amendment 2012 11-05-11
+!status work item 10-04-30
 !status ARG Approved  6-0-2  11-04-07
 !status work item 10-06-12
 !status received 10-03-26
@@ -12,7 +14,7 @@
 !subject Pragma Implemented should be an aspect, renamed, and better defined
 !summary
 
-The aspect Is_Synchronized is introduced as the proper way of specifying how
+The aspect Synchronization is introduced as the proper way of specifying how
 a synchronized interface operation must be implemented (replacing the
 pragma Implemented of AI05-0030-2).
 
@@ -63,8 +65,8 @@
 
   For the declaration of a primitive procedure of a synchronized tagged type
   the following language-defined representation aspect may be specified with
-  an aspect_specification:
-    Is_Synchronized.
+  an aspect_specification (see 13.3.1):
+    Synchronization.
 	If specified, the aspect definition shall be a Synchronization_Kind.
 
   The Synchronization_Kind By_Protected_Procedure shall not be applied to
@@ -78,19 +80,19 @@
   a procedure (including a protected procedure).
 
   If a primitive procedure overrides an inherited operation for which the
-  Is_Synchronized aspect has been specified, then any specification of the
-  aspect Is_Synchronized applied to the overriding operation shall have the
-  same Synchronization_Kind, or the inherited Synchronization_Kind shall be
-  Optional.
+  Synchronization aspect has been specified to be By_Entry or
+  By_Protected_Procedure, then any specification of the aspect Synchronization
+  applied to the overriding operation shall have the same Synchronization_Kind.
+
 
 Modify 9.5(18/3) as follows:
 
   [A pragma Implemented is said to *apply* to the procedure denoted
   by its *procedure_*local_name.] {Inherited subprograms inherit the
-  Is_Synchronized aspect, if any, from the corresponding subprogram of the
+  Synchronization aspect, if any, from the corresponding subprogram of the
   parent or progenitor type.}  If an overriding operation does not have
-  a [pragma] {directly specified} Is_Synchronized {aspect} then [any pragma
-  Implemented applying to] {the Is_Synchronized aspect of} the inherited
+  a [pragma] {directly specified} Synchronization {aspect} then [any pragma
+  Implemented applying to] {the Synchronization aspect of} the inherited
   operation [applies to] {is inherited by} the overriding operation.
 
 Modify 9.5.4(3/3) as follows:
@@ -115,15 +117,115 @@
   entry, or shall denote {a view or} a prefixed view of a primitive
   subprogram of a synchronized interface, where the first parameter of
   the unprefixed view of the primitive subprogram shall be a controlling
-  parameter, and [an Implemented pragma] {the Is_Synchronized aspect shall be
+  parameter, and [an Implemented pragma] {the Synchronization aspect shall be
   specified} with [implementation_kind]{Synchronization_Kind} By_Entry [shall
   apply to] {for} the primitive subprogram.
 
+Modify E.2.2(14.1/3) [from AI05-0060-1]:
+
+  * The corresponding specific type shall not have a primitive procedure {with
+    the Synchronization aspect specified}[to
+    which a pragma Implemented applies] unless the [implementation_kind]{synchronization_kind}
+    [of the pragma] is {Optional}[By_Any];
+
 !discussion
 
+!corrigendum 9.5(9)
 
+@dinsa
+Any call on a protected procedure or entry of a target protected object
+is defined to be an update to the object, as is a requeue on such an entry.
+@dinss
+@s8<@i<Syntax>>
+
+@xcode<   @fa<synchronization_kind ::= >@ft<By_Entry>@fa< | >@ft<By_Protected_Procedure>@fa< | >@ft<Optional>>
+
+@s8<@i<Static Semantics>>
+
+For the declaration of a primitive procedure of a synchronized tagged type
+the following language-defined representation aspect may be specified with
+an @fa<aspect_specification> (see 13.3.1):
+@xhang<@xterm<Synchronization>
+If specified, the aspect definition shall be a @fa<synchronization_kind>.>
+
+Inherited subprograms inherit the
+Synchronization aspect, if any, from the corresponding subprogram of the
+parent or progenitor type. If an overriding operation does not have
+a directly specified Synchronization aspect then the Synchronization aspect of the inherited
+operation is inherited by the overriding operation.
+
+@s8<@i<Legality Rules>>
+
+The @fa<synchronization_kind> By_Protected_Procedure shall not be applied to
+a primitive procedure of a task interface.
+
+A procedure for which the specified @fa<synchronization_kind> is By_Entry shall
+be implemented by an entry. A procedure for which the
+specified @fa<synchronization_kind> is By_Protected_Procedure shall be
+implemented by a protected procedure. A procedure for which the specified
+@fa<synchronization_kind> is Optional may be implemented by an entry or by
+a procedure (including a protected procedure).
+
+If a primitive procedure overrides an inherited operation for which the
+Synchronization aspect has been specified to be By_Entry or
+By_Protected_Procedure, then any specification of the aspect Synchronization
+applied to the overriding operation shall have the same @fa<synchronization_kind>.
+
+In addition to the places where Legality Rules normally apply (see 12.3),
+these rules apply also in the private part of an instance of a generic unit.
+
+NOTE
+@s9<18  The @fa<synchronization_kind> By_Protected_Procedure implies that the
+operation will not block.>
+
+!corrigendum 9.5.4(3)
+
+@drepl
+The @i<entry_>@fa<name> of a @fa<requeue_statement> shall resolve
+to denote an entry (the @i<target entry>)
+that either has no parameters, or that has
+a profile that is type conformant (see 6.3.1) with
+the profile of the innermost enclosing @fa<entry_body> or
+@fa<accept_statement>.
+@dby
+The @i<procedure_or_entry_>@fa<name> of a @fa<requeue_statement> shall resolve to denote
+a procedure or an entry (the @i<requeue target>). The profile of
+the entry, or the profile or prefixed profile of the procedure, shall
+either have no parameters, or be type conformant (see 6.3.1) with the profile
+of the innermost enclosing @fa<entry_body> or @fa<accept_statement>.
+
+!corrigendum 9.5.4(5)
+
+@drepl
+If the target entry has parameters,
+then its profile shall be subtype conformant with
+the profile of the innermost enclosing callable construct.
+@dby
+If the requeue target has parameters, then its (prefixed) profile shall be
+subtype conformant with the profile of the innermost enclosing callable construct.
+
+If the target is a procedure, the name shall denote a renaming of an entry,
+or shall denote a view or a prefixed view of a primitive subprogram of a synchronized
+interface, where the first parameter of the unprefixed view of the primitive
+subprogram shall be a controlling parameter, and the Synchronization aspect shall
+be specified with @fa<synchronization_kind> By_Entry for the primitive subprogram.
+
+!corrigendum E.2.2(14/2)
+
+@dinsa
+@xbullet<The primitive subprograms of the corresponding specific limited private
+type shall only have access parameters if they are controlling formal
+parameters; each non-controlling formal parameter shall support external
+streaming (see 13.13.2);>
+@dinst
+@xbullet<The corresponding specific type shall not have a primitive procedure
+with the Synchronization aspect specified unless the @fa<synchronization_kind>
+is Optional;>
+
+
 !ACATS Test
 
+ACATS tests are needed as explained in AI05-0030-2.
 
 !appendix
 
@@ -794,11 +896,11 @@
 For completeness in the para starting "A procedure" in the above. I would add
 something about the poor lonely Optional. eg
 
-A procedure for which the the specified Synchronization_Kind is Optional can 
-be implemented by an entry or by a procedure (including a protected 
+A procedure for which the the specified Synchronization_Kind is Optional can
+be implemented by an entry or by a procedure (including a protected
 procedure).
 
-Maybe it is somthing to do with the battle of Agincourt but I don't like 
+Maybe it is somthing to do with the battle of Agincourt but I don't like
 Optional but much prefer By_Any.  It just has to start By_
 
 ****************************************************************
@@ -814,10 +916,10 @@
 >   specified  Synchronization_Kind is [as] By_Protected_Procedure shall be
 >   implemented by a protected procedure.
 ...
-> For completeness in the para starting "A procedure" in the above. I 
+> For completeness in the para starting "A procedure" in the above. I
 > would add something about the poor lonely Optional. eg
-> 
-> A procedure for which the the specified Synchronization_Kind is 
+>
+> A procedure for which the the specified Synchronization_Kind is
 > Optional can be implemented by an entry or by a procedure (including a
 > protected procedure).
 
@@ -828,6 +930,691 @@
 not use "must". But we cannot use "may not", and we may not use "cannot".
 
 Easy to remember, right? ;-)
+
+****************************************************************
+
+From: Tucker Taft
+Sent: Monday, May 2, 2011  9:44 PM
+
+[Part of a message appropriate to this AI.]
+
+AI05-0215-1/08  Pragma Implemented should be an aspect, renamed, and better defined
+    [The class of this AI was wrong; it modifies an Amendment AI, so it also has to be Amendment.
+     Otherwise, it is unchanged.]
+    Approve ___X___ Disapprove ______ Abstain _______
+   Comments: I prefer the aspect name "Synchronization" to
+    "Is_Synchronized".  I think "Synchronization => Optional" is
+    significantly nicer than "Is_Synchronized => Optional" and
+    "Synchronization => By_Entry/By_Protected_Procedure" also
+    reads well.  Finally, it seems more natural for the aspect to
+    be "Synchronization" if the corresponding type is "Synchronization_Kind."
+
+    This paragraph is slightly weird:
+        If a primitive procedure overrides an inherited operation for which the
+	Is_Synchronized aspect has been specified, then any specification of the
+	aspect Is_Synchronized applied to the overriding operation shall have
+	the same Synchronization_Kind, or the inherited Synchronization_Kind
+	shall be Optional.
+
+     It seems odd to create a requirement on the inherited Synchronization_Kind,
+     since that is already determined at the point where the operation is being
+     overridden.
+
+     To me, it would make more sense to phrase this as follows:
+        If a primitive procedure overrides an inherited operation for which the
+	Synchronization aspect has been specified to be By_Entry or
+	By_Protected_Procedure, then any specification of the aspect
+	Synchronization applied to the overriding operation shall have the same
+	Synchronization_Kind.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Monday, May 2, 2011  10:32 PM
+
+[Part of a message appropriate to this AI.]
+
+...
+> AI05-0215-1/08  Pragma Implemented should be an aspect, renamed, and
+> better defined
+>     [The class of this AI was wrong; it modifies an Amendment AI, so
+> it
+also has to be Amendment.
+>      Otherwise, it is unchanged.]
+>     Approve ___X___ Disapprove ______ Abstain _______
+>    Comments: I prefer the aspect name "Synchronization" to
+>     "Is_Synchronized".  I think "Synchronization => Optional" is
+>     significantly nicer than "Is_Synchronized => Optional" and
+>     "Synchronization => By_Entry/By_Protected_Procedure" also
+>     reads well.  Finally, it seems more natural for the aspect to
+>     be "Synchronization" if the corresponding type is "Synchronization_Kind."
+
+Humm, anyone else have a thought on this one?
+
+>     This paragraph is slightly weird:
+>         If a primitive procedure overrides an inherited operation for which the
+>         Is_Synchronized aspect has been specified, then any specification of the
+>         aspect Is_Synchronized applied to the overriding operation shall have the
+>         same Synchronization_Kind, or the inherited Synchronization_Kind shall be
+>         Optional.
+>      It seems odd to create a requirement on the inherited Synchronization_Kind, since
+>      that is already determined at the point where the operation is being overridden.
+>      To me, it would make more sense to phrase this as follows:
+>         If a primitive procedure overrides an inherited operation for which the
+>         Synchronization aspect has been specified to be By_Entry or
+>         By_Protected_Procedure, then any specification of the aspect Synchronization
+>         applied to the overriding operation shall have the same Synchronization_Kind.
+
+OK by me.
+
+****************************************************************
+
+From: Tucker Taft
+Sent: Tuesday, May 3, 2011  7:45 AM
+
+[Part of a message appropriate to this AI.]
+
+...
+> Humm, anyone else have a thought on this one?
+
+John Barnes already gave this idea the thumbs up, several weeks ago.
+
+****************************************************************
+
+From: John Barnes
+Sent: Tuesday, May 3, 2011  11:16 AM
+
+I strongly prefer Synchronization. But instead of Optional we could have
+Is_Optional or Not_Specified (the latter you (Tuck) suggested earlier.
+
+I did promise to chew over this over Easter. However my mind was on other things
+like the old lady I bashed in a car park in Shropshire (actually I only bashed
+her motor) and the fact that my beloved wife left her bag in Wales when we
+travelled to the Peak district and this meant that a courier had to spend a
+happy few hours driving around to get it.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Tuesday, May 3, 2011  5:43 PM
+
+...
+> I did promise to chew over this over Easter. However my mind was on
+> other things ...
+
+Uh-huh. Anyway, I would hope that we are all done chewing from Easter. (Else
+that was one tough ham served for Easter dinner. ;-)
+
+What this problem requires is bold decision-making. (OK, not from this group.
+:-) I'll set up another one of my famous straw polls to gauge the thinking on
+this one.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Tuesday, May 3, 2011  6:00 PM
+
+(Sorry about the cryptic subject; it is hard to write a subject for this message
+without biasing the results.)
+
+We've previously discussed (without conclusion) possible names for the aspect
+defined by AI05-0030-2 and AI05-0215-1. It originally was "Implemented", and it
+now has changed into "Is_Synchronized". Part of the problem is that most of the
+best names turn out to be reserved words. We're also still unclear on the best
+name for the default state of this aspect (note that this name will usually not
+appear in program text; it is primarily a wording aid).
+
+Note that the other states are named By_Entry and By_Protected_Procedure, so the
+aspect name should work with those names (those will appear in program text).
+
+So I am asking for a quick straw poll on this issue. If needed, AI05-0215-1 will
+be modified with the result of this poll. I've gathered up the most interesting
+ideas floated so far:
+
+Please rank the top three of the following solutions from 1 (preferred) to 3
+(least preferred):
+
+______  The aspect is named Is_Synchronized and the default state is Optional [this is the current definition]
+
+______  The aspect is named Is_Synchronized and the default state is Not_Required
+
+______  The aspect is named Is_Synchronized and the default state is Not_Specified
+
+______  The aspect is named Is_Synchronized and the default state is Perhaps_Not
+
+______  The aspect is named Is_Synchronized and the default state is Who_Cares
+
+______  The aspect is named Is_Synchronized and the default state is By_Any
+
+______  The aspect is named Synchronization and the default state is Optional
+
+______  The aspect is named Synchronization and the default state is Not_Specified
+
+______  The aspect is named Synchronization and the default state is Not_Required
+
+______  The aspect is named _______________ and the default state is ________________
+
+[Editor's note: I suspect that some of these were suggested in jest, but there
+is no indication of that in the messages, so I've put them all here for voting.]
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Tuesday, May 3, 2011  6:02 PM
+
+Here's my ballot:
+
+...
+> Please rank the top three of the following solutions from 1
+> (preferred) to 3 (least
+> preferred):
+>
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Optional [this is the current definition]
+>
+> ___3___  The aspect is named Is_Synchronized and the default state is
+> Not_Required
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Specified
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Perhaps_Not
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Who_Cares
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> By_Any
+>
+> ___2___  The aspect is named Synchronization and the default state is
+> Optional
+>
+> ______  The aspect is named Synchronization and the default state is
+> Not_Specified
+>
+> ___1___  The aspect is named Synchronization and the default state is
+> Not_Required
+>
+> ______  The aspect is named _______________ and the default state is
+> ________________
+
+****************************************************************
+
+From: Bob Duff
+Sent: Tuesday, May 3, 2011  6:28 PM
+
+Here are my votes:
+
+> __3___  The aspect is named Is_Synchronized and the default state is
+> Optional [this is the current definition]
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Required
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Specified
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Perhaps_Not
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Who_Cares
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> By_Any
+>
+> __1___  The aspect is named Synchronization and the default state is
+> Optional
+>
+> ______  The aspect is named Synchronization and the default state is
+> Not_Specified
+>
+> __2___  The aspect is named Synchronization and the default state is
+> Not_Required
+>
+> ______  The aspect is named _______________ and the default state is
+> ________________
+
+****************************************************************
+
+From: Tucker Taft
+Sent: Tuesday, May 3, 2011  6:33 PM
+
+> Please rank the top three of the following solutions from 1
+> (preferred) to 3 (least
+> preferred):
+>
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Optional [this is the current definition]
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Required
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Specified
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Perhaps_Not
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Who_Cares
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> By_Any
+>
+> ___2___  The aspect is named Synchronization and the default state is
+> Optional
+>
+> ____1__  The aspect is named Synchronization and the default state is
+> Not_Specified
+>
+> ___3___  The aspect is named Synchronization and the default state is
+> Not_Required
+>
+> ______  The aspect is named _______________ and the default state is
+> ________________
+
+****************************************************************
+
+From: Robert Dewar
+Sent: Tuesday, May 3, 2011 10:33 PM
+
+> Please rank the top three of the following solutions from 1
+> (preferred) to 3 (least
+> preferred):
+>
+>
+> __`____  The aspect is named Is_Synchronized and the default state is
+> Optional [this is the current definition]
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Required
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Specified
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Perhaps_Not
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Who_Cares
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> By_Any
+>
+> ______  The aspect is named Synchronization and the default state is
+> Optional
+>
+> ______  The aspect is named Synchronization and the default state is
+> Not_Specified
+>
+> ______  The aspect is named Synchronization and the default state is
+> Not_Required
+>
+> ______  The aspect is named _______________ and the default state is
+> ________________
+>
+
+I don't have a 2 and a 3, because I don't care, my 1 is simply to say that the
+status quo is fine.
+
+****************************************************************
+
+From: Brad Moore
+Sent: Tuesday, May 3, 2011  11:47 PM
+
+Here's my ballot:
+> ...
+>> Please rank the top three of the following solutions from 1
+>> (preferred) to 3 (least
+>> preferred):
+>>
+>>
+>> ______  The aspect is named Is_Synchronized and the default state is
+>> Optional [this is the current definition]
+>>
+>> ______  The aspect is named Is_Synchronized and the default state is
+>> Not_Required
+>>
+>> ______  The aspect is named Is_Synchronized and the default state is
+>> Not_Specified
+>>
+>> ______  The aspect is named Is_Synchronized and the default state is
+>> Perhaps_Not
+>>
+>> ______  The aspect is named Is_Synchronized and the default state is
+>> Who_Cares
+>>
+>> ______  The aspect is named Is_Synchronized and the default state is
+>> By_Any
+>>
+>> ___2___  The aspect is named Synchronization and the default state is
+>> Optional
+>>
+>> ___3__  The aspect is named Synchronization and the default state is
+>> Not_Specified
+>>
+>> ___1___  The aspect is named Synchronization and the default state is
+>> Not_Required
+
+Choice 3 is a distant 3rd. It seems weird to specify that its not specified.
+
+****************************************************************
+
+From: Jean-Pierre Rosen
+Sent: Wednesday, May 4, 2011  1:59 AM
+
+> Please rank the top three of the following solutions from 1
+> (preferred) to 3 (least
+> preferred):
+>
+>
+> ___3___  The aspect is named Is_Synchronized and the default state is
+> Optional [this is the current definition]
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Required
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Specified
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Perhaps_Not
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Who_Cares
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> By_Any
+>
+> ___1___  The aspect is named Synchronization and the default state is
+> Optional
+>
+> ______  The aspect is named Synchronization and the default state is
+> Not_Specified
+>
+> ___2___  The aspect is named Synchronization and the default state is
+> Not_Required
+>
+> ______  The aspect is named _______________ and the default state is
+> ________________
+
+****************************************************************
+
+From: John Barnes
+Sent: Wednesday, May 4, 2011  6:26 AM
+
+> Please rank the top three of the following solutions from 1
+> (preferred) to
+> 3
+> (least
+> preferred):
+>
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Optional [this is the current definition]
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Required
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Specified
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Perhaps_Not
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Who_Cares
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> By_Any
+>
+> ___3___  The aspect is named Synchronization and the default state is
+> Optional
+>
+> ___1___  The aspect is named Synchronization and the default state is
+> Not_Specified
+>
+> ___2___  The aspect is named Synchronization and the default state is
+> Not_Required
+>
+> ______  The aspect is named _______________ and the default state is
+> ________________
+>
+
+Glancing at other ballots, it looks at least as if we have got rid of the Is
+which makes me happy so that I can remove Rant 2 from the Rat.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Friday, May 6, 2011  1:59 PM
+
+Here is the results so far on the synch aspect vote. We have a tie at this point
+(two choices both got 2 first place votes, 3 second place votes, and 1 third
+place votes), and it is pretty clear that the other choices are not going to
+matter. OTOH, quite a few people (Gary, Steve, Erhard) did not vote that usually
+do. So I'm going to ask for a second straw poll to decide between the tied
+options:
+
+--------
+
+Please chose one of the following:
+
+_______  The aspect is named Synchronization and the default state is Optional
+
+_______  The aspect is named Synchronization and the default state is Not_Required
+
+
+-------------------------
+
+
+> Please rank the top three of the following solutions from 1
+> (preferred) to 3 (least preferred): [7 overall votes; note that one
+> ballot did not give options 2 and 3.]
+>
+>
+> __3_1_3__  The aspect is named Is_Synchronized and the default state
+> is Optional [this is the current definition]
+>
+> __3____  The aspect is named Is_Synchronized and the default state is
+> Not_Required
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Not_Specified
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Perhaps_Not
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> Who_Cares
+>
+> ______  The aspect is named Is_Synchronized and the default state is
+> By_Any
+>
+> __2_1_2_2_1_3_  The aspect is named Synchronization and the default
+> state is Optional
+>
+> __1_3_1___  The aspect is named Synchronization and the default state
+> is Not_Specified
+>
+> __1_2_3_1_2_2_  The aspect is named Synchronization and the default
+> state is Not_Required
+>
+> ______  The aspect is named _______________ and the default state is
+> ________________
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Friday, May 6, 2011  1:59 PM
+
+And my ballot:
+
+Please chose one of the following:
+
+________  The aspect is named Synchronization and the default state is Optional
+
+___X____  The aspect is named Synchronization and the default state is Not_Required
+
+****************************************************************
+
+From: Tucker Taft
+Sent: Friday, May 6, 2011  2:09 PM
+
+> Please chose one of the following:
+>
+> ___X____  The aspect is named Synchronization and the default state is
+> Optional
+>
+> _______  The aspect is named Synchronization and the default state is
+> Not_Required
+>
+
+I believe if you look up the definition of "optional"
+you will find it means "not required."  So it seems silly to use the longer
+phrase.
+
+I personally preferred  "Not_Specified" but I guess that didn't make the cut...
+
+****************************************************************
+
+From: Steve Baird
+Sent: Friday, May 6, 2011  2:26 PM
+
+> I believe if you look up the definition of "optional"
+> you will find it means "not required."  So it seems silly to use the
+> longer phrase.
+
+I'll also vote for "optional", but to say that I don't feel strongly about this
+one is an understatement.
+
+****************************************************************
+
+From: John Barnes
+Sent: Friday, May 6, 2011  2:33 PM
+
+> Please choose one of the following:
+>
+> _______  The aspect is named Synchronization and the default state is
+> Optional
+>
+> ____X___  The aspect is named Synchronization and the default state is
+> Not_Required
+
+****************************************************************
+
+From: Edmond Schonberg
+Sent: Friday, May 6, 2011  2:38 PM
+
+> I'll also vote for "optional", but to say that I don't feel strongly
+> about this one is an understatement.
+>
+
+Ditto, shorter is better
+
+****************************************************************
+
+From: Gary Dismukes
+Sent: Friday, May 6, 2011  2:40 PM
+
+> Please chose one of the following:
+
+chose => choose
+
+> ___X___  The aspect is named Synchronization and the default state is
+> Optional
+>
+> _______  The aspect is named Synchronization and the default state is
+> Not_Required
+
+****************************************************************
+
+From: Bob Duff
+Sent: Friday, May 6, 2011  2:54 PM
+
+> Please chose one of the following:
+>
+> __X____  The aspect is named Synchronization and the default state is
+> Optional
+>
+> _______  The aspect is named Synchronization and the default state is
+> Not_Required
+
+****************************************************************
+
+From: Jean-Pierre Rosen
+Sent: Friday, May 6, 2011  4:10 PM
+
+> Please chose one of the following:
+>
+> ___1____  The aspect is named Synchronization and the default state is
+> Optional
+>
+> ____2___  The aspect is named Synchronization and the default state is
+> Not_Required
+
+Just because I thought that making them ex-aequo would not help.
+
+****************************************************************
+
+From: Brad Moore
+Sent: Friday, May 6, 2011  7:25 PM
+
+> Please chose one of the following:
+>
+> _____X__  The aspect is named Synchronization and the default state is
+> Optional
+>
+> _______  The aspect is named Synchronization and the default state is
+> Not_Required
+
+I'm thinking it's better to say what it is, than what it isnt
+
+****************************************************************
+
+From: Erhard Ploedereder
+Sent: Monday, May 9, 2011  11:52 AM
+
+Please chose one of the following:
+
+___X____  The aspect is named Synchronization and the default state is Optional
+
+_______  The aspect is named Synchronization and the default state is Not_Required
+
+
+Erhard (who usually stays out of naming discussions, only to regret it later ;-)
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Thursday, May 12, 2011  1:00 AM
+
+To summarize the results of this second straw poll:
+
+Please chose one of the following:
+
+___8____  The aspect is named Synchronization and the default state is Optional
+
+___2____  The aspect is named Synchronization and the default state is Not_Required
+
+This is a pretty clear-cut result, and I've updated the AI to reflect this. Thanks for voting.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Thursday, May 12, 2011  1:52 AM
+
+A for-the-record note:
+
+AI05-0060-1 adds a rule to the DS annex about "pragma Implemented". This needs
+to be changed to aspect Synchronization as with all of the other references
+originally from AI05-0030-2. (Another case of the tools complaining about
+something; as Bob notes, there is a bit of regression testing in the Standard,
+at least as far as syntax is concerned.)
 
 ****************************************************************
 

Questions? Ask the ACAA Technical Agent