News for hackers. Stuff that matters.
Re:Fun with Unicode in Swift by continuational on Saturday December 15, 2018 @09:29AM (#18688491)
So instead of having to learn English as a prerequisite to understand code bases, you propose that we learn a dozen or more different natural languages instead?

Can you imagine what it would be like if every library had to be released in N different translations? Sounds like an exceptionally bad idea. A huge step back for our field.

Re:Fun with Unicode in Swift by ubernostrum on Saturday December 15, 2018 @09:48AM (#18688554)
If you take the position that every codebase everywhere must be available to and understood by every programmer everywhere, sure, you have to settle on a common language. Luckily, I don't think anybody takes that position, or at least takes it seriously.

But there are plenty of monolingual dev teams out there whose shared language isn't English and isn't written in ASCII. Why should they be forced to write code in English if nobody who works with it is an English speaker?

I already regularly see people post questions to Stack Overflow and mailing lists and IRC where names of classes and functions and variables are ASCII but not English (i.e., someone writes a class called "Utilisateur", not "User"). Why not let them just use their language fully?

Re:Fun with Unicode in Swift by hyperpape on Saturday December 15, 2018 @10:40AM (#18688729)
This is a false dichotomy.

English will continue to be the lingua franca of programming for the foreseeable future, and full professional competence will probably require being able to read APIs that are in English.

However, for the sake of learners everywhere, it is important that it be possible to program using non-ascii identifiers. Asking a 10 year old who doesn't speak English to learn what "while" means is quite different from requiring their variables to be in a language they don't understand.

Re:Fun with Unicode in Swift by kazinator on Saturday December 15, 2018 @01:02PM (#18689494)
But ASCII is not English. If identifier are restricted to ASCII, then what that requires is romanization, not specifically English.

  char *speicher; // German for memory

  (define f (keizoku) ...) ; Japanese for continuation