Date: Thu, 14 Apr 2022 18:26:53 -0400
On Thu, Apr 14, 2022 at 3:39 PM Frederick Virchanza Gotham via
Std-Proposals <std-proposals_at_[hidden]> wrote:
>
> I have now made the 2nd draft of my proposal dated 14 April 2022.
I don't see any motivation for the proposal. You describe what you
want, but you never make the case that:
1. This is a problem faced by a significant number of C++ programmers.
2. This is a problem for whom all existing solutions are ineffective,
impractical, or otherwise a significant problem.
For example, you provide an example to demonstrate "the problem". But
you don't justify that this is good code that people should be
writing. You don't provide any evidence that lots of C++ code gets
written this way and people who aren't you are encountering this
limitation. You don't even consider alternative design solutions and
show the problems with those.
Basically, my read of the proposal is that it's a very complicated
language feature, which abuses keywords to mean something completely
different from their usual meaning, all of which amounts to solving a
problem faced by a very small number of actual C++ programmers, which
can probably be adequately solved by not designing their classes that
way (the use of virtual inheritance alone already counts as a code
smell to me).
Compare this proposal to Deducing This, P0847. Its motivation section
is not terribly long, but it does make the case that there is a
problem, one experienced by a lot of C++ programmers, and one for
which existing solutions are repetitive and sub-optimal. And while it
does use a keyword in a novel way, it's not *that* novel. `this` still
is talking about a pointer/reference to the current object, at least
conceptually.
Your proposal is way more complicated, and I think it will be far less
useful to most C++ programmers.
Std-Proposals <std-proposals_at_[hidden]> wrote:
>
> I have now made the 2nd draft of my proposal dated 14 April 2022.
I don't see any motivation for the proposal. You describe what you
want, but you never make the case that:
1. This is a problem faced by a significant number of C++ programmers.
2. This is a problem for whom all existing solutions are ineffective,
impractical, or otherwise a significant problem.
For example, you provide an example to demonstrate "the problem". But
you don't justify that this is good code that people should be
writing. You don't provide any evidence that lots of C++ code gets
written this way and people who aren't you are encountering this
limitation. You don't even consider alternative design solutions and
show the problems with those.
Basically, my read of the proposal is that it's a very complicated
language feature, which abuses keywords to mean something completely
different from their usual meaning, all of which amounts to solving a
problem faced by a very small number of actual C++ programmers, which
can probably be adequately solved by not designing their classes that
way (the use of virtual inheritance alone already counts as a code
smell to me).
Compare this proposal to Deducing This, P0847. Its motivation section
is not terribly long, but it does make the case that there is a
problem, one experienced by a lot of C++ programmers, and one for
which existing solutions are repetitive and sub-optimal. And while it
does use a keyword in a novel way, it's not *that* novel. `this` still
is talking about a pointer/reference to the current object, at least
conceptually.
Your proposal is way more complicated, and I think it will be far less
useful to most C++ programmers.
Received on 2022-04-14 22:27:46