C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Editorial change proposal in 12.8/2
Goto page 1, 2  Next
 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ language, library and standards
View previous topic :: View next topic  
Author Message
Alberto Ganesh Barbati
Guest





PostPosted: Fri Nov 24, 2006 12:59 am    Post subject: Editorial change proposal in 12.8/2 Reply with quote



Hi Everybody,

Quote:
From the most recent draft:

12.8/2: A non-template constructor for class X is a copy constructor if
[...].

12.8/9: A user-declared copy assignment operator X::operator= is a
non-static non-template member function of class X with [...].

There was recently a discussion on comp.lang.c++.moderated where the
first statement was criticized because of the unfortunate logical
construction of the phrase. The second statement does not suffer such
objection. I propose to reword 12.8/2 with the same construction as
12.8/9, that is:

12.8/2: A user-declared copy constructor for class X is a non-template
constructor of class X with [...].

Just my 2 eurocent,

Ganesh

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Greg Herlihy
Guest





PostPosted: Fri Nov 24, 2006 9:11 pm    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote



Alberto Ganesh Barbati wrote:
Quote:
Hi Everybody,

From the most recent draft:

12.8/2: A non-template constructor for class X is a copy constructor if
[...].

12.8/9: A user-declared copy assignment operator X::operator= is a
non-static non-template member function of class X with [...].

There was recently a discussion on comp.lang.c++.moderated where the
first statement was criticized because of the unfortunate logical
construction of the phrase. The second statement does not suffer such
objection. I propose to reword 12.8/2 with the same construction as
12.8/9, that is:

12.8/2: A user-declared copy constructor for class X is a non-template
constructor of class X with [...].

The phrase "user-declared" should be removed from the definition of the
copy assigment operator - not added to the definition of a copy
constructor. As the usage of both terms makes clear: neither a "copy
constructor" nor a "copy assignment operator" needs to be
user-declared.

Greg

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Alberto Ganesh Barbati
Guest





PostPosted: Sat Nov 25, 2006 10:10 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote



Seungbeom Kim ha scritto:
Quote:
Alberto Ganesh Barbati wrote:
From the most recent draft:

12.8/2: A non-template constructor for class X is a copy constructor if
[...].

12.8/9: A user-declared copy assignment operator X::operator= is a
non-static non-template member function of class X with [...].

There was recently a discussion on comp.lang.c++.moderated where the
first statement was criticized because of the unfortunate logical
construction of the phrase. The second statement does not suffer such
objection. I propose to reword 12.8/2 with the same construction as
12.8/9, that is:

12.8/2: A user-declared copy constructor for class X is a non-template
constructor of class X with [...].

A copy constructor according to the definition from 12.8/2 doesn't have
to be user-declared, so your new wording is more restrictive. And what
do you propose in place of [...]?

Also Greg Herlihy seems to find the term "user-declared" out of place
and probably you are both right. I agree with Greg that it's better to
remove "user-declared" from 12.8/9 instead of adding it to 12.8/2. This
is more consistent with both 12.8/4: "If the class definition does not
explicitly declare a copy constructor, one is declared implicitly" and
12.8/10: "If the class definition does not explicitly declare a copy
assignment operator, one is declared implicitly.

The full 12.8/2 statement could then read something like: "A /copy
constructor/ for class X is a non-template constructor of class X whose
first parameter is of type X&, const X&, volatile X& or const volatile
X&, and either there are no other parameters or else all other
parameters have default arguments (8.3.6).109)"

Quote:
12.8/2 reads: "A non-template constructor for class X is a /copy/
constructor if its first parameter is of type X&, const X&, volatile X&
or const volatile X&, and either there are no other parameters or else
all other parameters have default arguments (8.3.6)."

I had also thought of a better wording, but it's not as simple as it
first appears to be. Perhaps it's almost as good as it can be, only if
we put /copy constructor/ (not just /copy/) in italics.

As I said in my first post, I think the subject/predicate inversion is
very unfortunate from a logical point of view and should not be kept. I
believe my proposal above is a reasonable replacement that maintains the
intended meaning without changing too many words. In fact, except for
reordering, only the word "if" was replaced with "whose" (besides, the
construction with "whose" is used both in footnote 109 and in paragraph 5).

About italics, I strongly agree. It's the term "copy constructor" that
is being defined, not "copy". The same objection applies to 12.8/9 also,
where "copy assignment operator" and not just "copy" should be italicized.

In fact, now that I read 12.8/9 more closely, it seems that it could use
some minor rewording too. What about: "A /copy assignment operator/ for
class X is a non-static non-template member function X::operator= with
exactly one parameter of type X, X&, const X&, volatile X& or const
volatile X&."

Ganesh

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Seungbeom Kim
Guest





PostPosted: Mon Nov 27, 2006 10:10 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

Alberto Ganesh Barbati wrote:

Quote:
The full 12.8/2 statement could then read something like: "A /copy
constructor/ for class X is a non-template constructor of class X whose
first parameter is of type X&, const X&, volatile X& or const volatile
X&, and either there are no other parameters or else all other
parameters have default arguments (8.3.6).109)"

The statement is fine until the word "and", but how does the sentence
after that ("either ... or else ...") connect to the previous part
through "whose"?

--
Seungbeom Kim

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Alf P. Steinbach
Guest





PostPosted: Mon Nov 27, 2006 10:10 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

* Seungbeom Kim:
Quote:
Alberto Ganesh Barbati wrote:

The full 12.8/2 statement could then read something like: "A /copy
constructor/ for class X is a non-template constructor of class X whose
first parameter is of type X&, const X&, volatile X& or const volatile
X&, and either there are no other parameters or else all other
parameters have default arguments (8.3.6).109)"

The statement is fine until the word "and", but how does the sentence
after that ("either ... or else ...") connect to the previous part
through "whose"?

Adopt the wording from the definition of default constructor, "that can
be called with exactly one argument".

Both more consistent and more concise.

--
A: Because it messes up the order in which people normally read text.
Q: Why is it such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Pete Becker
Guest





PostPosted: Mon Nov 27, 2006 10:28 pm    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

Alberto Ganesh Barbati wrote:
Quote:

If I understand it correctly,
an editorial change does not need to be discussed in a formal meeting to
be accepted. However, I admit that I don't know who decides whether a
change is "editorial" and what are the criteria.

The editor (that's me) decides what's an editorial change. The criteria are:

1. it's a change in presentation only,
not affecting technical requirements

2. there is a significant problem with the current wording,
and the change will make the presentation significantly
better

Changing any wording runs the risk of making people think that something
significant has changed. While some of the suggested rewordings might be
slightly better, there's not enough of a problem to justify changing
text that's been in the standard for many years.

--

-- Pete
Roundhouse Consulting, Ltd. (www.versatilecoding.com)
Author of "The Standard C++ Library Extensions: a Tutorial and
Reference." (www.petebecker.com/tr1book)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Gennaro Prota
Guest





PostPosted: Mon Nov 27, 2006 11:23 pm    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

On Mon, 27 Nov 2006 05:51:54 GMT, "Alf P. Steinbach" wrote:

Quote:
* Seungbeom Kim:
The statement is fine until the word "and", but how does the sentence
after that ("either ... or else ...") connect to the previous part
through "whose"?

Adopt the wording from the definition of default constructor, "that can
be called with exactly one argument".

Both more consistent and more concise.

I'd bet that all this will totally ignored by the committee. Let us
remember that with all the rush that MS is pushing on them, there are
*only* two other meetings to finalize C++09.

--
Gennaro Prota. For hire.
(to mail me, remove any 'u' from the address)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Alberto Ganesh Barbati
Guest





PostPosted: Tue Nov 28, 2006 12:08 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

Alf P. Steinbach ha scritto:
Quote:
* Seungbeom Kim:
Alberto Ganesh Barbati wrote:

The full 12.8/2 statement could then read something like: "A /copy
constructor/ for class X is a non-template constructor of class X whose
first parameter is of type X&, const X&, volatile X& or const volatile
X&, and either there are no other parameters or else all other
parameters have default arguments (8.3.6).109)"

The statement is fine until the word "and", but how does the sentence
after that ("either ... or else ...") connect to the previous part
through "whose"?

Just changing "there are" with "it has" should do the job. Anyway, I
don't think the change is really necessary: it's unambiguous that "there
are" means "(in the constructor parameter list) there are". But I admit
English is not my mother tongue.

Quote:
Adopt the wording from the definition of default constructor, "that can
be called with exactly one argument".

Both more consistent and more concise.


That could be another possibility. The only problem I see is that
requirements about the type of the parameters are not clearly
expressible in terms of the type of the arguments. Do you have a full
sentence in mind we could use?

Ganesh

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Alberto Ganesh Barbati
Guest





PostPosted: Tue Nov 28, 2006 3:38 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

Gennaro Prota ha scritto:
Quote:
On Mon, 27 Nov 2006 05:51:54 GMT, "Alf P. Steinbach" wrote:

* Seungbeom Kim:
The statement is fine until the word "and", but how does the sentence
after that ("either ... or else ...") connect to the previous part
through "whose"?
Adopt the wording from the definition of default constructor, "that can
be called with exactly one argument".

Both more consistent and more concise.

I'd bet that all this will totally ignored by the committee. Let us
remember that with all the rush that MS is pushing on them, there are
*only* two other meetings to finalize C++09.


Thanks for your support. I am very aware that it may be so, but I think
it's worth a try. Anyway, that's the reason why I proposed an "editorial
change" and not posted a "defect report". If I understand it correctly,
an editorial change does not need to be discussed in a formal meeting to
be accepted. However, I admit that I don't know who decides whether a
change is "editorial" and what are the criteria. That's why I am
carefully weighting the words and trying to change as less as possible,
in order to have more chances that it might possibly qualify.

Ganesh

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Gennaro Prota
Guest





PostPosted: Tue Nov 28, 2006 6:42 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

On Mon, 27 Nov 2006 16:28:49 CST, Pete Becker wrote:

Quote:
Changing any wording runs the risk of making people think that something
significant has changed. While some of the suggested rewordings might be
slightly better, there's not enough of a problem to justify changing
text that's been in the standard for many years.

Let me say that they are not *slightly* better. The current wording
--like many other places in the standard-- uses "if" where "if and
only if" (or a "real" definition of a term in terms of others) would
be required. That's a significant problem.

--
Gennaro Prota. C++ developer. For hire.
(to mail me, remove any 'u' from the address)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Gennaro Prota
Guest





PostPosted: Tue Nov 28, 2006 7:04 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

On Mon, 27 Nov 2006 21:38:10 GMT, Alberto Ganesh Barbati wrote:

Quote:
Gennaro Prota ha scritto:

I'd bet that all this will [be] totally ignored by the committee. Let us
remember that with all the rush that MS is pushing on them, there are
*only* two other meetings to finalize C++09.


Thanks for your support.

Don't get me wrong. I'm always in favour of improvements. That's why I
feel quite frustrated by the current situation. You may notice that
the committee is so absorbed by its work that practically every defect
report, or even suggestion, is more or less ignored at the moment.

--
Gennaro Prota. For hire.
(to mail me, remove any 'u' from the address)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Pete Becker
Guest





PostPosted: Tue Nov 28, 2006 9:42 pm    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

Gennaro Prota wrote:
Quote:

You may notice that
the committee is so absorbed by its work that practically every defect
report, or even suggestion, is more or less ignored at the moment.


I could have sworn we worked on a bunch of them at the Portland meeting.
I must have been hallucinating.

--

-- Pete
Roundhouse Consulting, Ltd. (www.versatilecoding.com)
Author of "The Standard C++ Library Extensions: a Tutorial and
Reference." (www.petebecker.com/tr1book)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Gennaro Prota
Guest





PostPosted: Wed Nov 29, 2006 12:52 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

On Tue, 28 Nov 2006 15:42:55 GMT, Pete Becker wrote:

Quote:
Gennaro Prota wrote:

You may notice that
the committee is so absorbed by its work that practically every defect
report, or even suggestion, is more or less ignored at the moment.


I could have sworn we worked on a bunch of them at the Portland meeting.
I must have been hallucinating.

I know that in Portland a fair amount of core and library issues have
been voted into the WP. Defect report submissions on this group,
however, are being regularly ignored. For long time.

Personally I've given up.

--
Gennaro Prota. C++ developer. For hire.
(to mail me, remove any 'u' from the address)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Pete Becker
Guest





PostPosted: Wed Nov 29, 2006 1:45 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

Gennaro Prota wrote:
Quote:
On Tue, 28 Nov 2006 15:42:55 GMT, Pete Becker wrote:

Gennaro Prota wrote:
You may notice that
the committee is so absorbed by its work that practically every defect
report, or even suggestion, is more or less ignored at the moment.

I could have sworn we worked on a bunch of them at the Portland meeting.
I must have been hallucinating.

I know that in Portland a fair amount of core and library issues have
been voted into the WP. Defect report submissions on this group,
however, are being regularly ignored. For long time.

Please don't confuse "the committee" with "the moderators of this
newsgroup." The moderators are responsible for forwarding issues to the
standards committee.

--

-- Pete
Roundhouse Consulting, Ltd. (www.versatilecoding.com)
Author of "The Standard C++ Library Extensions: a Tutorial and
Reference." (www.petebecker.com/tr1book)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Gennaro Prota
Guest





PostPosted: Wed Nov 29, 2006 6:14 am    Post subject: Re: Editorial change proposal in 12.8/2 Reply with quote

On Tue, 28 Nov 2006 19:45:46 GMT, Pete Becker wrote:

Quote:
I know that in Portland a fair amount of core and library issues have
been voted into the WP. Defect report submissions on this group,
however, are being regularly ignored. For long time.

Please don't confuse "the committee" with "the moderators of this
newsgroup." The moderators are responsible for forwarding issues to the
standards committee.

Ok. But what I notice is that even if committee members, including
you, are around they remain completely silent about such facts. A
couple of times I've pointed out, to you, that some of my DR
submissions missed the 'forwarded to the C++ committee' note, even
though there seemed to be consensus that they were worth forwarding.
No reply. In this very thread I say that the wording which Alberto
suggests fixes an "if" vs. "if and only if" problem (not something I'd
consider of secondary importance). You didn't reply. And I could
continue the list. In the end, the impression one gets from this other
side is that many members are simply bored by (some of) our
submissions.

--
Gennaro Prota. C++ developer. For hire.
(to mail me, remove any 'u' from the address)

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html ]
Back to top
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ language, library and standards All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.