Cult-like behaviour [was Re: Kindness]

Steven D'Aprano steve+comp.lang.python at
Sun Jul 15 06:43:00 EDT 2018

On Sun, 15 Jul 2018 11:43:14 +0300, Marko Rauhamaa wrote:

> Paul Rubin < at nospam.invalid>:
>> Marko Rauhamaa <marko at> writes:
>>> I have similar feelings, except that I'm not convinced Go is the
>>> answer.
>> I don't think Go is the answer either, but it probably got strings
>> right.  What is the answer?

Go strings aren't text strings. They're byte strings. When you say that 
Go got them right, that depends on your definition of success.

If your definition of "success" is:

- fail to be able to support 80% + of the world's languages
  and a majority of the world's text;

- perpetuate the anti-pattern where a single code point
  (hex value) can represent multiple characters, depending
  on what encoding you have in mind;

- to have a language where legal variable names cannot be
  represented as strings; [1]

- to have a language where text strings are a second-class
  data type, not available in the language itself, only in
  the libraries;

- to have a language where text characters are *literally* 
  32-bit integers ("rune" is an alias to int32);

  (you can multiple a linefeed by a grave accent and get pi)

then I guess Go got it right.

> That's the ten-billion-dollar question, isn't it?!

No. The real ten billion dollar question is how people in 2018 can stick 
their head in the sand and take seriously the position that Latin-1 (let 
alone ASCII) is enough for text strings.

[1] Go identifiers are Unicode. Go strings are not. Go figure.

Steven D'Aprano
"Ever since I learned about confirmation bias, I've been seeing
it everywhere." -- Jon Ronson

More information about the Python-list mailing list