Hacker News new | past | comments | ask | show | jobs | submit login

It seems to me like it would be an unnecessary layer of complexity, and it could make communication between international teams much more difficult. I can't imagine what I would do if I opened the source file from a team in Ireland and found that it was all in Gaelic. Perhaps it's inconvenient for them that they have to read it in English, but at least it's a single language, not several.

Now, one thing I can imagine working would this being supported in an IDE, or at a 'meta symbolic' (for lack of a better term) level.

For example, if we simply implemented a strict transliteration system, so that there was a one-to-one correspondence between a program written in English and the same one written in Chinese, then an editor could convert between them on the fly. This would be useful for switching between alphabets and making code easier to read for different people but doesn't necessarily carry meaning through. (The English word "while," spelled with Chinese characters is still the English word "while.")

Working with an IDE that maintains a one-to-one mapping internally between English keywords in a given language and their non-English equivalents, one could conceivably code in Russian and have the IDE internally translate it to English before passing the code to the compiler or interpreter, a sort of pre-compilation stage if you will. It could work in reverse as well, so that the canonical version is always in English (or whatever the native language of the programming language is) but coders in different nationalities see their own language.

With languages that use symbols, like Lisp, one could create a many-to-one mapping such that a single symbol has multiple printed representations depending on the (human) language in use. This would have to be enabled with a reader level switch. In Common Lisp, you could do something similar to this by creating a package for the language of your choice which maps symbols to their standard equivalents.

Non of these solutions are perfect however. For example, non handle languages designed to imitate English grammar such as SQL, for example. And they introduce complexity that may be unnecessary.

Edit: Changed India to Ireland; apparently Indians speak English.




This works for builtins maybe, but the majority of the words you use in a language tend to be either from libraries or your own functions, so multi-lingual languages would then put the burden of translation on to every single person to write code in that language.

So despite any potential advantages, it'd certainly never have good libraries.


And not just the libraries --- the documentation and the forums filled with people asking questions. But maybe Chinese will have the critical mass to overcome this problem. Not good enough for corporate usage, but maybe sufficient for teenagers who care about computers and not talking to foreigners, so want to start out hacking without having to learn English at the same time.

(Also I guess it's just sheer dumb luck that Chinese word order and English order are roughly similar enough that something like ZhPy or astine's IDE idea above is basically just an exercise in keyword substitution. Doing that kind of translation in head-final languages like Tamil or Japanese would just result in even more mind-bending than leaving it in English --- e.g. in those languages the equivalent of "from/to" refers to the preceding word, not the following one, e.g. "morning from night to").


Well, keyword substitution doesn't imply a change in syntax, though it's about as asinine I have to believe.


Perhaps it's inconvenient for them that they have to read it in English

You know that English is the official language of India? Government and commerce use it as a neutral language between the dozens of languages and dialects that are used in the different regions of India. Now if only the EU would get its act together...


Really? When I worked with IBM my Indian coworkers only spoke English when not speaking with other Indians.

It doesn't matter though. Drop in Russian, Japanese, or Italian: my point still stands.


Yep - the Indian outsourcing types I've dealt with speak to each other in very fast, heavily-accented English and to non-Indians in slow, slightly-accented English.


Edit: Changed India to Ireland; apparently Indians speak English.

So do Irish. Well under 5% of Irish people have any real level of fluency in "Gaelic". I got a well above average grade and I discovered yesterday that I'd forgotten the words for ear, eye and egg (linguistic noodling). Everybody in Ireland speaks English.


I was being cheeky. Sorry if you missed that.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: