C++ Logo


Advanced search

Subject: Re: [isocpp-lib-ext] std::colony name brainstorming
From: Jeff Garland (jeff_at_[hidden])
Date: 2021-02-10 06:55:41

> On Feb 9, 2021, at 11:03 PM, Ville Voutilainen via Lib-Ext <lib-ext_at_[hidden]> wrote:
> Well, old houses are demolished, new ones are built. I fail to see how
> houses and neighborhoods aren't dynamic.

I owned the same house for ~25 years in an unchanging neighborhood. The cathedral in Prague was how old again? Sure, there’s change, but it's utterly the wrong time scale of change for an analogy to a container that is designed to handle ‘bullet objects in a game that last 1 second’ or data in high frequency trading. Colony invokes ’slow moving’ for me — not fast.

>> So let’s do some other analysis. If we put ‘colony’ into google, we’re not going to find plf::colony at all — in fact we’re not going to find any results related to computer science in any way. Put in ‘colony computing’ or ‘colony data structure' — interestingly, and I think unfortunately for this name, ‘ant colony optimization’ comes up (new to me today). This data structure is unrelated to these optimization algorithms — since they are graph traversal algorithms. My conclusion is that the name is completely novel, possibly misleading, and not obvious to the target audience (computer scientists).
> When I google for "colony c++", plf::colony is the first hit. What do
> you mean by suggesting that the target audience
> here is computer scientists?

And the search ‘colony data structure’ brings up ‘ant colony’ algorithms - not related, confusing. plf::colony is super specific and won’t be remembered. Why would ‘computer scientists' go looking for history on ‘colony data structure’. Because many developers have a background in computer science and they know data structures are often backed by mathematics.

> I have a very different target audience
> for colony - programmers.

See above, a large set of programmers have degrees in computer science. Even self taught programmers will find a wealth of information on stack, queue, list and other basic data structures. Colony has no precedent in literature beyond Matt’s writing.

> When toying
> with the idea of changing the name, we need to consider whether the
> suggested alternative name is as
> good as colony is after being given the room/house explanation, not
> before that explanation is given, as far
> as I care.

Agree. In general, I have a low opinion of analogy based names because they break down too easily. You’re the only one that addressed the ‘merits’ or non-merits of my suggestions which I’ll come back to in another mail.

> On Feb 10, 2021, at 1:43 AM, Ville Voutilainen via Lib-Ext <lib-ext_at_[hidden]> wrote:
> On Wed, 10 Feb 2021 at 10:21, Richard Hodges via Lib-Ext
> <lib-ext_at_[hidden]> wrote:
>> Colony is a bad name for this container on its own merits
> ..and those merits on which it's a bad name are..?
> This is what makes these discussions a waste of time. Claims without
> rationale, that is.

Please reread my mail. 1) no precedence in computer science literature (novel), 2) a class of algorithms that have ‘colony’ in the name (confusing), and 3) based on a bad analogy (at least for me and several others). That’s rationale. The followup was really +1 to point #3.

It might be a waste of time for other reasons, but not that one.

> And also name suggestions without rationale, of course. And complaints
> that the name
> is bad without suggestions for alternatives that don't immediately stink.

All my suggestions were at least motivated with some logic. Based on the actual properties of the container that matter to users. The logic is there to be discussed. Some others may have suggested better — tbd.


SG14 list run by sg14-owner@lists.isocpp.org

Older Archives on Google Groups