Существуют ли какие-либо компиляторы с локализованными версиями языков программирования? - PullRequest
4 голосов
/ 13 ноября 2008

Я часто задавался вопросом, почему программисты, не говорящие по-английски, вынуждены использовать другой язык при программировании, когда кажется, что было бы так легко предложить IDE, которая могла бы заменить ключевые слова локализованными версиями. Почему немцы не могут использовать цикл "während..macht"?

Программисты в Японии, Германии, Франции, Испании, Ботсване просто широко используют макросы / определения операторов, чтобы сделать жизнь более терпимой, или они просто привыкают к функциональному значению печати, если, тогда, пока, делают, начало, конец, переменная, двойная, функция и т. д.

Возможно, более широкое использование фреймворков (J2EE / .NET) усложняет эту задачу, но все же кажется целесообразным. С другой стороны, если бы клингон стал де-факто языком программирования в США, я бы, наверное, пожалел, что предложил это.

Ответы [ 17 ]

18 голосов
/ 13 ноября 2008

В большинстве языков программирования ключевые слова зарезервированы, поэтому их нельзя использовать для имен переменных и т. Д.

Теперь предположим, что ключевые слова меняются каждый раз, когда вы меняете культуру - код, написанный в одной культуре, не может быть перенесен в другую без изменения идентификаторов. Ик. Кроме того, когда кто-то копировал свой код на форум вопросов, подобный этому, мы больше не говорили бы на одном языке, как это было.

Существуют явные преимущества наличия только одной культуры в самом языке программирования ...

17 голосов
/ 13 ноября 2008

Подобные вещи не уникальны для компьютерных языков. Все контрольные слова для музыки на итальянском языке (andante, allegro, crescendo и т. Д.). Это работало хорошо долгое время.

Кроме того, он позволяет более легко обмениваться программами. Предположим, вы пытались интегрировать функцию от финского программиста в модуль на французском языке и хотели отправить ее для дальнейшей интеграции вашему австралийскому коллеге.

4 голосов
/ 13 ноября 2008

Французская (а также, IIRC, немецкая и некоторые другие языки) версия Office когда-то имела локализованную версию VBA.

Они справились, потому что это была очень плохая идея! Это нормально для случайных пользователей, которые время от времени используют макросы, но как только вы начинаете искать информацию в Интернете, хотите поделиться своим кодом и т. Д., Это кошмар. Не говоря уже об открытии французского рабочего листа в испанском Excel ... (хотя я предполагаю, что они сохранили байт-код, а не литералы - так, например, запуск немецкого макроса, скопированного где-то во французском Excel).

VB (и некоторые другие языки, такие как Lua) позволяют использовать идентификаторы с ударениями и т. Д. Я помню, что интенсивно использовал их давным-давно. Теперь это выглядит странно, и, опять же, очень сложно делиться кодом.
Точно так же мне неловко, когда я вижу код с комментариями на испанском или китайском ...

Напомним, что во времена 8-битных компьютеров французский компьютер (TO8) имел французскую версию Basic: вместо WHILE ... WEND у нас был FAIRE ... JUSQUA (или что-то подобное).

Во всяком случае, таких локализованных компьютерных языков сейчас довольно мало ... К счастью или к несчастью, английский язык является языком общения в области компьютерных наук. По крайней мере, это не самый сложный язык для изучения. И словарный запас большинства языков (по крайней мере, набор ключевых слов) весьма ограничен.

Единственная проблема заключается в том, что мы пытаемся обучать программированию молодых людей, не владеющих английским языком, но они учатся быстро.

2 голосов
/ 13 ноября 2008

Нет! Никогда не используйте «локализацию» для своих источников. Английский язык де-факто является стандартом для программирования, он очень помогает и делает этот мир немного лучше.

Код должен быть переносимым и понятным для всех (когда это возможно), локализация убила бы эту возможность.

Я говорю по-русски, по-итальянски и немного по-английски, но я использовал в своей работе все, кроме английского.

2 голосов
/ 13 ноября 2008

Во Франции существует язык разработки, который называется WinDev , где весь код полностью переведен на французский язык.

1 голос
/ 13 ноября 2008

В старой (действительно старой) версии Word вы написали бы свой макрос на WordBasic. WordBasic был локализован.

1 голос
/ 19 ноября 2008

Не язык программирования сам по себе, но Microsoft Excel известен своими локализованными именами функций. К счастью, открытие листа Excel в другой языковой версии не нарушает ваши формулы, поскольку они переводятся.

1 голос
/ 20 ноября 2008

Когда я впервые выполнил локализацию Applescript, не знаю, правда ли она по-прежнему.

1 голос
/ 20 ноября 2008

В некоторых случаях ключевые слова даже не являются английскими (хотя они могут неопределенно напоминать английские слова): car , cdr и cons из Lisp; elsif в Perl; printf , fgets , sscanf и многие другие из C. Я думаю, что в большинстве языков есть хотя бы некоторые ключевые слова, которые не локализованы даже для англоязычных.

Ключевые слова принадлежат языку программирования, а не языку программиста.

0 голосов
/ 19 апреля 2009

Я нашел один!

Lexico.NET : Lexico - это объектно-ориентированный язык образовательного программирования на испанском языке, основанный на .NET Framework.

Кроме того, в Википедии есть целая страница со списком .

...