My very slow progress analyzing the technical concerns described in the original "Why Concepts didn't make C++17" post continues...
Blog: http://honermann.net/blog/2016/09/18/refining-concepts-separate-checking-part-1-relaxing-constraints/
Twitter: https://twitter.com/tahonermann/status/777434002961600512
Reddit: https://www.reddit.com/r/cpp/comments/53bh20/refining_concepts_separate_checking_part_1/
Tom.
So now we are to have our technical discussions on twitter.
Seriously?
--
You received this message because you are subscribed to the Google Groups "SG8 - Concepts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to concepts+u...@isocpp.org.
To post to this group, send email to conc...@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/concepts/.
On 18 September 2016 at 16:10, Bjarne Stroustrup <bja...@stroustrup.com> wrote:So now we are to have our technical discussions on twitter. Seriously?
I don't think we are. I welcome people exploring concepts, but nevertheless, what we need are proposals; Evolution cannot discuss blog posts, however old-fashioned that may be.
Tom.
[1]:
https://groups.google.com/a/isocpp.org/d/msg/concepts/CX3aUunonaI/ZHE2DzMmFgAJ
[2]: http://wg21.link/p0324
As was clearly shown in Jacksonville, the committee did not have consensus on the current design of the Concepts TS.
Perhaps that discussion and its related considerations and examples
need to be made more public.
I don't think it serves anyone's purposes to have the designers of
Concepts plus me to understand the
various considerations involved and their consequences, but the rest
of the committee having
at most a vague understanding of it.
The worst possible outcome we
could have is people with
varying degrees of education on the subject matter of definition
checking continuing to insist
on having it, and then the committee failing to ship Concepts in C++20
in case we don't provide
definition checking. That would be an unmitigable disaster.
As was clearly shown in Jacksonville, the committee did not have consensus on the current design of the Concepts TS.
I don't think that was clearly shown at all. Most of the committee wanted more bake time (including practical experience) for the design embodied in the TS.
FWIW, the feature proposed in your most recent blog post has been known, considered, and discussed privately for at least 5 years. At the time Concepts Lite was proposed, C++ didn't have a mechanism for dealing with this in an appropriate way (the static-if proposals of 2011 would have made definition checking impossible, among other things).
Concepts Lite was designed very carefully. If you're really interested in that design, you might try asking here instead of trying to extrapolate from proposals.
Maybe this tutorial material from Andrew Sutton will be of help:
https://accu.org/index.php/journals/2157
https://accu.org/index.php/journals/2198
https://accu.org/index.php/journals/2160
And this from Eric Niebler:
https://ericniebler.github.io/range-v3/
Note also:
Iterator facade:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0186r0.html
an academic paper exploring the ideas in the contrext of computer
algebra: http://www.axiomatics.org/~gdr/liz/cicm-2012.pdf