<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Have you ever heard communities from any of the languages I listed
(Ada, C#, CL, D, Go, Haskell, J, Java, Mathematica, Perl, Python,
Ruby1.9, etc.) complain that "well we would accept that change, but
it's incompatible with Unicode variable names?" Have we had problems
with Spanish or Portuguese programmers submitting Spanish or
Portuguese code to OTP? That code exists, just without using other
characters, and it's just not much of a problem from what I
understand.<br>
<br>
Many of us are 'foreigners' already, and many of us made the effort
to switch to English to be understood -- hell, wasn't Swedish at the
origins of Erlang? We all understood, pretty fast too, that English
was the way to go around here. I can tell you people who don't speak
English realize it also.<br>
<br>
People speaking other languages only aren't morons. They damn well
know that the international community won't understand their
language already, and they probably deal with it daily. People on
this list seem to think that as soon as you allow other alphabets or
glyphs, they'll be invaded by foreigners taking over their code
bases. It just won't happen, the same way it doesn't happen already
while it's entirely possible to represent other languages in the
current subset of Erlang.<br>
<br>
I'd like to call bull shit on this entire premise. It's entirely
made up.<br>
<br>
<br>
<div class="moz-cite-prefix">On 12-10-22 9:49 AM, Rustom Mody wrote:<br>
</div>
<blockquote
cite="mid:CAJ+TeodgtVODgkf3_SJSO=5E3YiF6XnKKtDmhPLH3TLKLf=UdA@mail.gmail.com"
type="cite"><br>
<br>
<div class="gmail_quote">On Mon, Oct 22, 2012 at 5:59 PM, Fred
Hebert <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:mononcqc@ferd.ca" target="_blank">mononcqc@ferd.ca</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> Regarding the use of
Unicode in variables, here is a short list of languages that
allow it:<br>
<br>
- Ada<br>
- C#<br>
- Common Lisp<br>
- D<br>
- Delphi<br>
- GNU Forth (other impls are often ASCII only)<br>
- Go<br>
- Haskell<br>
- J<br>
- Java<br>
- Mathematica<br>
- Perl (also Perl 6)<br>
- Python<br>
- Racket<br>
- Tcl<br>
<br>
Now in any of these languages, can you blame the use of
Unicode in identifiers as the source of woes in there? Is it
usually due to semantics, other syntax, lack of clarity
(even in English), their community? Name me one language
where unicode support is a true problem compared to anything
else, in this list.<br>
<br>
Is a Chinese programmer suddenly typing with her own glyphs
rather than pinyin a problem? If I'm programming in French
already and had my education in French, it's possible I
learned everything using French terminology:<br>
<br>
tableau -> array, arbre binaire -> binary tree, liste
-> list, paquet -> packet, octet -> byte, taille
-> size, fichier -> file, dossier -> directory,
boucle -> loop<br>
<br>
and so on. Note that I can use all of these in my existing
Erlang programs if I want to, if I'm working with people who
do not speak English but still have a formal education in
Computer Science, software engineering, or whatever. Chances
are that someone who doesn't speak French won't have the
best time reading that code, but has it been a major problem
so far? Would allowing, say accented characters so someone
can write 'colonne' and 'rangée' instead of 'colonne' and
'rangee' for 'column' and 'row', be the straw that breaks
the camel's back? Is the use of accents what's going to be
the problem here? Or are we supposed to be especially afraid
of non-latin-looking characters?<br>
<br>
I've mentioned to a few people here before that I'm coming
from a small part of Quebec where people don't speak English
that well. I've had to work on code bases where French was
mandatory because otherwise, people on your team wouldn't be
able to understand what the code was supposed to do. French
code shoved in English exists, and it's being used. I'm sure
you know the same happens in a boatload of other languages.<br>
<br>
Telling these people "well just Learn English, that's what I
did when I needed to" isn't a valid way of doing things.
Nobody should have to jump through the hoops we had to jump
through, just because we had to when we were learning. This
isn't a reason enough. I'm not willing to go back to my old
office, and tell this father of 3 children (who programs to
feed them) "Sorry buddy, you're out of a job because
apparently English is now necessary." It just won't happen
because it is *not* necessary to know English to program.<br>
<br>
As much as the huge github love circle and "code is global"
thing has been going, there's still an entire localized
world out there where people work in small private
enterprises, providing local services to people who speak
their language, a place where people don't give a shit
whether user 'robocop56' stars your repository or not.
Programmers who want to go global can still write English
stuff all the same, lest they want to see their code shunned
by the majority of the world. That's likely what anyone
using the listed languages above did.<br>
<br>
This is no excuse to make it hard for everyone else to work
in a way they're comfortable. A huge part of programming is
being able to reason about code. Let programmers who want to
do it, be able to do so, especially when we see that so many
languages support it already, without most people even
noticing.<br>
<br>
Here's one for you specifically Yurii: why would you want to
keep people from using a feature they want to use but that
you wouldn't use anyway?<br>
<br>
Regards,<br>
Fred.</div>
</blockquote>
<div bgcolor="#FFFFFF" text="#000000"><br>
Fred:<br>
If I may use a marketing metaphor: if one widens the net of
the marketing campaign, one potentially gets more customers,
but also the campaign cost rises. So a hardnosed cost-benefit
analysis is required.<br>
<br>
To take an example closer to us: at some point in the long
history of emacs, emacs decided to support windows. Today
probably there are 3 times more windows users of emacs than
all else combined -- just my guesstimate from hanging about
the emacs users list. However when I move over to the emacs
dev list a different picture emerges.<br>
The windows code in the low level parts of the display manager
is sufficiently different and sufficiently brittle for the
devs to wish avoid touching it.<br>
So supporting windows has a direct cost in slowing the
progress of emacs.<br>
<br>
Its obvious that for Erlang to support unicode will be a
development cost.<br>
The important (and hopefully non-rhetorical) question is whats
the cost-benefit analysis.<br>
<br>
In the Erlang world I am completely unqualified at this point
to say (hope this changes soon!)<br>
</div>
</div>
<br>
Rusi<br>
</blockquote>
<br>
</body>
</html>