Non-English Programming Languages? 191
jjohnson asks: "As a coder I've been exposed to a lot of programming languages, big and small, and they're all in (pseudo) English, reflecting their invention and development in English speaking countries (or to gain traction in English speaking countries, such as Ruby). Of course, there's no reason a programming language couldn't be developed in Russian, using a cyrillic character set; or Chinese, using kanji; or Japanese, using hiragana. All three of those nations have big/advanced enough developer communities to justify the development of native-tongue programming languages, which have the obvious benefit of not requiring their developers to learn/code in a foreign language. What non-English programming languages exist, and how do they compare?"
Many of them... (Score:4, Insightful)
Bad Idea (Score:4, Insightful)
With the internet and the "global economy" it makes NO sence to have a localized language, unless your a proprietary developer that doesn't want you code to have the longest life it could
You may think I am just saying this because I speak english so of course I think english should be the most used, but I honestly can tell you I would be quite happy to learn another language as best I could if english weren't the primary communication language for programming (and most anything really). I would obviously be severely inconvienenced, but no more so that maybe people whose software I use now.
Maybe the best choice would be to have translatable keywords for a language, because the syntax really doesn't match english in all cases anyway. Of course translatable keywords would become a nightmare quickly due to the severe limitation on variable names etc, for instance how could you ever choose a word and be sure the language wouldn't end up need that for "if" in some language you never heard of?
As far as different character sets, this becomes a non-issue as all software moves towards unicode and UTF-8 (or equivalent) encoding. Once that happens you can for get about worring about character sets (and its happening fast).
LOGO (Score:2, Insightful)
So what if it was interpreted rather than compiled, and it was a very limited program made for children, it was a programming language, so stop laughing, all of you.
Re:None English programming languages? (Score:5, Insightful)
Explained the developer: Well, just like an "allegro" or "pianissimo" is just the historical way music is annotated, "switch" and "if" are, for historical reasons, the way code is written.
Re:Bad Idea (Score:3, Insightful)
Have you ever seen Visual Basic for Applications in a localized version of MS Office? It really hurts the eye. If you have ever coded an advanced hello world programm in nearly any language, you know what a FOR loop looks like. If you look at VBA with translated keywords, you can't see anything but bla bla because of the translated keywords.
English is very helpful for keywords because you can understand english sentences no matter what order the words are in ("to station go now I"). In other languages (like german and french), order of words is more important, so the pseudo-english grammar of many computer languages does not match the translated keywords. It is simply much harder to read german with a pseudo-english grammar than reading english with a pseudo-english grammar.
I use to code completely in english (including comments and docs) for about 5 years now. It is just easier to read than mixing german comments and message strings with the english grammar of the language. And it has the nice side-effect that others can read my code without the babelfish.
BTW: See also Scarblac's posting "Translated Visual Basic" for a nice comparison to music and its italian "keywords".
Tux2000
Re:Google (Score:3, Insightful)
It's not wisdom, it's knowledge. Indexed and searchable, but still only knowledge. Wisdom is knowing which information is relevant to context at hand, AND what to do with this knowledge.
English: de facto standard (Score:2, Insightful)
While in college, I had to work with graduate students from India and China. We couldn't understand each other all the time, but we could read each other's code. I'm now in industry, but my company does work all over the world. It's pretty normal in my industry to have distributed project teams. With the advent of the internet, distributed projects have become more and more common. And we will probably see a rise in distributed companies, such as MySQL AB [mysql.com]. A company like this couldn't exist if there weren't some sort of language standard.
Personally, I don't care what spoken language is decided on, but consider that the majority of developers in the world can speak English. Given that, it just makes sense to keep things in English as it will require the fewest number of people to have to learn a language.