To: J3 J3/20-160r1 From: Gary Klimowicz&Rich Bleikamp Subject: Technical issue UTI-007 in DO CONCURRENT REDUCE Date: 2020-October-14 Reference: 19-252r2, 20-007 Background ========== In F202x, we added a new locality clause, REDUCE. In UTI-007, the editor commented that we describe an initialization at the start of each iteration (which would be inefficient if actually implemented for each iteration). We propose an edit to correct this while retaining the initialization corresponding to the REDUCE operator. Looking at the last sentence paragraph 3 at [190:31-32], since the notion of thread-local storage is implied for REDUCE variables, we can reword this to say that the construct entity is only initialized once before the iterations begin. { the construct entity gets its value once for all iterations } Changes in the r1 paper: - moved commentary to above the edits, did NOT make it a note. - made edit instructions clearer. - I have a note that we may have wanted to add a "Note", but I don't know what specifically that was for. Email Rich (and Gary) if you remember. ALSO, I did this r1 because Gary may not be available today (Wed) to do it. If he is, he might upload an r2. If so, the r2 is the paper for vote. Edits to 20-007r1 ================= { 11.1.7.5 Additional semantics for DO CONCURRENT constructs } { UTI-007 Initialize the construct entity once for all iterations } [190:31-32] Replace "At the beginning of execution of each iteration, the construct entity is assigned an initial value corresponding to its reduce-operation as specified in Table 11.1." with "Before execution of the iterations begin, the construct entity is assigned an initial value corresponding to its reduce-operation as specified in Table 11.1." [191:before line 1] Delete UTI-007. { end }