> On Dec 19, 2018, at 12:33 PM, Michael Catanzaro <mcatanz...@igalia.com> wrote: > > On Tue, Dec 18, 2018 at 9:31 PM, Darin Adler <da...@apple.com> wrote: >> I’ve gotten used to the name AtomicString over the years, but I wouldn’t >> strongly object to changing it if other programmers are often confused by >> it’s similarity to the term “atomic operations”. > > Well there were two other developers in the thread Ryosuke linked to who made > the exact same mistake as me, so I do think the current name is problematic. > A change wouldn't need to be drastic, though. I think suggestions from the > old thread like "StringAtom" or "AtomString" would be unproblematic. The > problem is the specific word "atomic" carries an expectation that the object > be safe to access concurrently across threads without locks; I think that > expectation doesn't exist if not for the "ic" at the end. > > FWIW I've only ever heard the "interned string" terminology prior to now.
“Interned string” is really obvious to people who have seen it but mysterious to those who have not. Unfortunately, I don’t think there is a term for this concept that most programmers will already know. So the best we can do is a term that is clearly something you need to look up and can’t be confused for something else. Another term of art name for this concept is Symbol. Unfortunately, search results for String, Atom and Atom String don’t give a helpful explanation, and Symbol could be confused with the JavaScript language’s notion of symbols. “Interned String” gives helpful search results, but is not the normal use of the terminology. Usually there is an operation called “intern”, or there might be reference to “string interning”, but it usually gives back just a plain string, or a type with a name like “atom” or “symbol”. On balance, if we change, I’d lean towards Atom, since it is concise, obviously mysterious if you don’t know what it is, and understandable to at least some people who have seem that name for the concept. The only downside is that it’s not obvious from the name that it is a kind of string. Regards, Maciej _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-dev