Кодирование на других (разговорных) языках - PullRequest
103 голосов
/ 15 октября 2008

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

Полагаю, я спрашиваю: знает ли каждый программист в мире достаточно английского, чтобы использовать те же слова, что и я?

Будет ли этот код:

If (i < size){
    switch
        case 1:
            print "hi there"
        default:
            print "no, thank you"
} else {
    print "yes, thank you"
}

отобразить точно так же, как я вижу это сейчас на английском языке, или какой-нибудь другой не говорящий по-английски человек увидит слова «if», «switch», «case», «default», «print» и "еще" на родном языке?

РЕДАКТИРОВАТЬ - да, это серьезно. Я не знал, если разные локализации языка имеют разные ключевые слова. или если вообще есть разные локализации.

Ответы [ 26 ]

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

Язык сценариев Filemaker локализован. Сценарии (и данные!) Хранятся в ужасной «сорта канонической» форме.

Итак, если вы напишите скрипт в американской версии, а затем откроете его во французской версии, все ключевые слова и имена встроенных функций будут на французском языке. Но почему это не работает? Ага! Французская версия использует "," в качестве десятичной точки и, следовательно, во избежание двусмысленности использует ";" для разделения аргументов функции - там, где американская версия использует "." и "," соответственно. Это преобразование вы должны сделать сами.

Таким образом, вы работаете через невероятно плохой интерфейс редактирования скриптов (вы не можете писать скрипты как текстовые файлы), чтобы исправить все эти вещи. Это работает! Большой! Результаты все неверны! о нет! Ага! Дата 7 января 2004 г., указанная вами в американской версии, интерпретируется как дата 1 июля 2004 г. Шучу ли я ? Нет.

[Примечание: Filemaker 8 и 9 могут быть нормальными - я когда-либо работал только с 3 - 7.]

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

Когда я был ребенком, мы ездили во Францию, и в музее, куда мы ходили, я помню, как нашел дисплей, который показал вам, как писать компьютерные программы. Язык был неким базовым вариантом, и я отчетливо помню его, используя POUR вместо FOR и так далее. Мне было 7 лет, и я только что выучил бейсик, и мне казалось совершенно естественным, что у французов будет свой собственный диалект, подобный этому !!

Полагаю, это могло быть LSE , которое я видел?

1 голос
/ 16 августа 2009

на итальянском

se (i < dimensione){
    scegli
        caso 1:
            stampa "ciao"
        mancante:
            stampa "no, grazie"
} altrimenti {
    stampa "sì, grazie"
}

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

Мне также пришлось работать с кодом, одновременно содержащим идентификаторы на итальянском, немецком, английском и французском языках, не только потому, что он был разработан во многих разных местах, но и потому, что основной разработчик счел это забавным и помог ему не дублировать имена идентификаторов (конечно, с обычной длиной в 2000 строк ....)

1 голос
/ 15 октября 2008

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

1 голос
/ 15 октября 2008

Было бы бессмысленно, ИМХО, для языка синтаксис . Это просто убило бы любую мобильность.

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

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

Я думаю, что WordBasic был локализован. WordBasic использовался для написания макросов в Word до использования VBA.

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

...