<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>