For what it’s worth, I’ll retract “bundle”. I’m still on the fence about “stable_”.
Also note that the naming conversation is almost certainly going to happen in LEWG proper when the paper gets reviewed there. If the paper can list more names, with short rationales for why those names aren’t as good as colony, then it may be able to reduce the time we spend talking about the name. The treatment on “bag” is good.
From: SG14 <firstname.lastname@example.org> On Behalf Of
Tony V E via SG14
Sent: Monday, February 8, 2021 1:27 PM
To: Jens Maurer via SG14 <email@example.com>
Cc: Tony V E <firstname.lastname@example.org>
Subject: [EXTERNAL] Re: [SG14] std::colony name brainstorming
On Mon, Feb 8, 2021 at 1:34 PM Henry Miller via SG14 <email@example.com> wrote:
The bikeshed needs paint, Matt choose a color. I'd prefer to go with it over waste time in discussions that are hard to agree on.
Naming is not a waste of time.
At least not in general, Although it may be in this case.
This case is tricky because the container is more about what it is *not* than what it *is*. ie it is not ordered, it does not have a key like map/set (unless you consider an iterator the key...), etc.
It sounds like stable iterators are an essential reason to use this class (is it essential, or is it just a remnant of its implementation?),
but I'm not sure stable_ here means the same as stable_ in stable_sort, etc. So it might be more confusing than helpful.
A good name can help focus the design on what is essential and what isn't, and that really helps answer questions that will surely come up in the future ("how should it interact with this new C++29 library/language feature...").
But this may very well be a case where the best/only answer is "coining" a term/name that the community just learns.
Just not "bundle", please. That already has *2* meanings in my codebase.
"colony" might be as good as anything, but it is worth spending some time thinking about it. Naming can be useful.
I do not think you will find any anything short in English that describes what colony does, so we need to settle on something and learn it. A non-programmer seeing std::vector for the first time will probably think direction and magnitude because that is what math uses the term for, but as seasoned C++ programmers we have long ago learned what vector is in programming and don't even think about could there be a better word. Likewise, the important part of colony is we learn the name
If you know of a different programming language that uses colony for something different, then please bring that up.
Definitely a good point.
We should have a discussion on if C++ using it for something different is a problem we should worry about or not. In this case we includes the users of the other language.
If you know of some other human language (in modern use not required) that does have a word for what colony does, then I'm interested. After verifying with experts then we will give it an ASCII spelling and an interesting footnote in every C++ book from now on.
Failing the other two, think hard: is your contribution actually useful, or just bike-sheding? https://en.wiktionary.org/wiki/bikeshedding.
Be seeing you,