Кодирование на других (разговорных) языках


105

Это то, что меня всегда интересовало, и я не могу найти ни одного упоминания об этом в Интернете. Когда магазин, скажем, из Японии, пишет код, смогу ли я прочитать его на английском? Или у таких языков, как 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" и " еще "на родном языке?

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


3
Следственный вопрос: существуют ли какие-либо основные языки, ключевые слова которых не на английском языке (даже если язык изначально был изобретен в месте, где английский не является родным языком)?
Джон Шнайдер

Этот вопрос напоминает мне о разговоре, который я когда-то вел с (иностранцем), который думал, что основным языком Бога является английский, поэтому другие люди должны выучить его, чтобы их молитвы могли быть поняты. (Я не хочу показаться грубым, тем не менее интересный вопрос)
wallyqs

И я думал, что Бог всемогущ!
Autodidact

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

1
О, и теперь, когда я прочитал некоторые ответы ... Хороший вопрос. Я всегда предполагал, что существуют локализованные версии компьютерного кода, но если подумать, некоторые соглашения было бы кошмаром для реализации (справа налево или вертикально ориентированное направление), а другие было бы просто трудно приспособить (в частности: строки в PHP заканчиваются точкой с запятой. Это основано на западном обычае заканчивания полных предложений точкой с запятой. Представьте, что вы пытаетесь локализовать правила пунктуации. Возможно, даже у вас есть крутая испанская ведущая метка).
Энтони

Ответы:


159

Если я хорошо понял, вопрос на самом деле таков: «Каждый ли программист в мире знает достаточно английского языка, чтобы использовать те же зарезервированные слова, что и я?»

Что ж ... Здесь не английский язык, а зарезервированные слова языка программирования. Я имею в виду, что когда я начал около 10 лет назад, я не знал английского языка, но все же мог программировать простые вещи, изучая язык программирования, даже когда я не знал, что они означают (на английском). На самом деле это помогло мне выучить английский.

Например. Я знаю, что для выполнения "итераций" (конечно же, итераций) мне пришлось написать:

 for( i = 0 ; i < 100 ; i++ ) {}

Для меня «за», «;» а «++» - простые иностранные слова или символы. Позже я узнал, что «for» означало «para», а «while» означало «mientras» и т. Д., Но в то же время мне не нужно было знать английский, но в моем случае мне нужно было знать «C».

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

Итак, ответ таков: нет, я не знаю, есть ли на моем родном языке и т. Д. Я вижу их на английском, но они не значили для меня ничего другого, что, в свою очередь, значили для языка программирования.

Это похоже на оператор switch в bash: case .. esac. Что такое "esac" ... для меня конец оператора switch в bash.

Я думаю, это то, что мы называем абстракцией


10
Кстати, esac - это просто случай наоборот. Я не мог сказать, притворились ли вы, что не знаете, чтобы донести какую-то мысль, но я видел, как это сбивает с толку не говорящих по-английски.
pbh101

9
Конечно, поскольку fi имеет if, но в какой-то момент единственное значение, которое они имеют, это «вы завершаете switch statemente, написав 'esac'» ... Разве они не сбивают с толку или нет, но они не означают что-нибудь на английском. Но они имеют значение в Си, баше или паскале. В этом-то и дело. Изучаем язык программирования.
OscarRyz

5
Обратите внимание на то, что в Excel этот макрос переведен на местный язык, а «if» становится «si» на французском языке, что делает инструменты абсолютно непригодными для использования.
e-satis

9
Вы всегда собирались получить лучший ответ от человека, для которого английский не является родным. Я шотландец, и мне было трудно выучить английский ;-)
Дэви

9
+1 Когда я начал программировать, я даже не знал, как правильно произносить goto. Но позже, когда я узнал, что это значит, у меня на лице появилась ухмылка.
Хэмиш Грубиджан

28

В языке Java некоторые методы должны быть названы (по крайней мере частично) с использованием английского языка из-за соглашения JavaBeans.

Это соглашение требует, чтобы свойство X было установлено с помощью пары методов getX () и setX (). Здесь, во французской Канаде, где некоторые разработчики обязаны писать код на французском языке, это приводит к следующей пародии:

interface Foo {

  Color getCouleur();

  void setCouleur(Color couleur);
}

9
Ох уж эти крики! Бюрократия снова побеждает! :(
AR.

3
да, во французских школах вас этому учат. Это настолько отстой, что ученики никогда не используют то, что они делали в классе, для написания кода в реальном мире и быстро склоняются к написанию этого на простом английском языке.
e-satis

В моем университете некоторые преподаватели использовали финский в качестве примера кода, и результат был в целом еще более неудобным, даже если я понимал их принципиальные причины этого. К счастью, «в реальном мире» это почти неслыханно (по крайней мере, в частном секторе). Английский FTW (в плане программирования).
Jonik

2
@Jonik: По крайней мере, вам не приходилось спорить об ASCII / расширенной кодировке. В некоторых местах (здесь) были большие споры по поводу наименования ваших идентификаторов: а) по-английски, б) по-чешски без акцентов, в) по-чешски с акцентами (большинство из которых вы не можете печатать без чешской раскладки клавиатуры. , замечательно для удобства обслуживания кем-либо еще).
Писквор покинул здание

@Piskvor, на самом деле, если вы используете финские имена, возникает аналогичная дилемма о том, использовать ли специальные символы (äöå) или заменять их на & o (и если вы их используете, вы, вероятно, столкнетесь с проблемами кодировки). Но да, к счастью, мне не приходилось использовать финский в коде как минимум 7 лет. :)
Jonik 01

27

У меня проблемы с поиском ссылок, но мне вспоминаются три истории.

Хакер Lisp защищает бессмысленные функции, такие как «cdr» и «car», сравнивая их с программированием на вашем неродном языке: http://people.csail.mit.edu/gregs/ll1-discuss-archive-html/msg01171. html

Когда Юкихиро Мацумото («Мац») начал разрабатывать Ruby, он использовал английские ключевые слова, хотя всю документацию писал на японском! . Пару лет не было документации по Ruby на английском языке, и очень мало американцев использовали этот язык. Но теперь это язык мирового уровня, и тот факт, что он родился в Японии, представляет только исторический интерес. Если бы язык использовал ключевые слова в хирагане, ему было бы гораздо труднее завоевать популярность.

Однажды я прочитал эссе - может быть, кто-то еще сможет его найти, Google сегодня не поможет - в котором говорилось, что перевод ключевых слов был ошибочным, потому что слова на самом деле не английские - это жаргон. Мало того, что do (используя приведенные выше примеры) para и pour не имеют точного значения, которое имеет for в английском языке, для непрограммистов фраза «for loop» является треп. Даже американцам нужно узнать новое значение. Так что перевод поверхностного значения слов на другой язык больше похоже на каламбур, чем на самом деле.


25

Раньше я действительно не слишком много думал о программировании на японском языке, но начнем с примера кода вопроса.

Использование только языковых операторов на японском языке с переменными на английском языке:

// In Japanese, it makes more sense to put the keywords/modifiers as
// postfix expressions rather than prefix expressions.
(i < size)か {
     (l[i])は {
     1だ:
         「もしもし。」を書く;
     省略時値:
         「いいえ、いいですよ。」を書く;
     }
} ない {
     「はい、ありがとうございます。」を書く;
}

Точки запятые на (;) Я думаю .. = D
Хосе Леаль

1
На самом деле я подумал, что если бы вы могли писать код на японском, вы могли бы использовать такие слова как → 定 問 上 下 不 в качестве специальных слов, вы могли бы вообразить шепелявость на японском? (定 rember (→ (лат) (問 ((空? lat) (引用 ())) (又 ...
wallyqs

1
Если вы собираетесь писать на постфиксе, вы можете сделать это диалектом Форта,? :-)
Кен

это вообще будет компилироваться ?? : \
NoobEditor

13

Как уже отмечали многие люди, для большинства языков программирования вам просто нужно выучить несколько ключевых слов, поэтому не имеет большого значения, на английском ли они (или на другом языке, если на то пошло). Это просто символ, который ассоциируется у вас с какой-то конструкцией. Например, в VB у вас есть «THEN», которое на многих языках C-стиля будет «{», и это не имеет большого значения в удобочитаемости (ну, по крайней мере, так я это вижу, будучи неанглийским носитель языка).

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

Я помню, как кто-то однажды дал мне небольшой фрагмент ActionScript, взятый из какого-то блога. Имена были на немецком языке, и, поскольку я не говорю ни слова на этом языке, материал можно было бы назвать var_123, var_562 или func_333 (и, вероятно, мне было бы легче запомнить имена или, по крайней мере, иметь шанс написать их правильно без копирования и вставки). Поскольку это был короткий автономный фрагмент, я использовал онлайн-переводчик, чтобы дать этим переменным и функциям значимые имена на моем родном языке (испанском), и после этого все стало ясно. Дело в том, что код был на самом деле простым, но я смог разобраться в нем без особых (ненужных) дополнительных усилий только тогда, когда преодолел языковой барьер.

С тех пор я перешел на использование английского языка для именования идентификаторов. Нравится вам это или нет, но это «койне» для программирования, инженерии и вообще технических вещей. Большинство API написаны на английском языке, как и большая часть документации (и, вероятно, лучшие ресурсы, которые вы можете найти, также есть на английском языке). В качестве приятного момента он сохраняет ваш код более согласованным с кодом, с которым вы, вероятно, будете взаимодействовать, и я думаю, что он имеет тенденцию быть более компактным и лаконичным, чем другие языки, такие как испанский (что в противном случае было бы моим естественным выбором).

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


Ага. Небольшая проблема заключается в том, что кодировщик не умеет правильно писать имена переменных на английском языке. Худшее, что я видел, это "String EmployiNeim" хехе (нах, шучу), но я видел вещи, действительно близкие к этому, раньше.
OscarRyz

Для человека, для которого английский не является родным, вы на удивление хорошо владеете языком. Поздравляю, английский - очень странный зверь даже для нас, носителей языка.
Николас Флинт

10

В языке программирования определены ключевые слова и стандартные имена классов, и лучше всего давать пользовательским типам, переменным и функциям также английские имена (я могу сказать, что это не родной язык ;-).

Так что да, если все в порядке, вы сможете прочитать код.

Однако такие языки, как Java и Perl, позволяют использовать полный набор Unicode для идентификаторов, поэтому, если кто-то напишет имена своих классов на кандзи, у вас, скорее всего, возникнут проблемы.

Обновление: для Perl есть модуль шутки который позволяет писать Perl на латыни. Но на самом деле это просто шутка. Никто серьезно не пользуется такими вещами.

Второе обновление: идея локализованных языков программирования не так уж и смешна. Макроязык Excel локализован, но, к счастью, он хранится в файле на одном каноническом языке (английском), поэтому локализация - это просто слой поверх обычных вещей. Такие вещи имеют смысл только для небольших «программ», для «настоящих» программ становится трудно поддерживать.


7

На самом деле имеют некоторую Non-английский на основе языков программирования (Википедия)

Я норвежец, но всегда использовал английский для всего кода, кроме вывода (игнорируя какой-то глупый школьный код). На самом деле я обычно пишу все на английском, а потом перевожу на свой родной язык, используя gettext (или что-то еще).


6

Я британец, и проблема, с которой мы часто сталкиваемся, - это противоречие между американским и британским правописанием. Это часто происходит с терминами, связанными с программированием, такими как Initialise () или Initialize (), Analyze () или Analyze () и т. Д. Это может (имеет) привести к проблемам при попытке переопределения методов, а иногда их трудно обнаружить.

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

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


4

AppleScript когда-то был доступен на французском и японском диалектах. Не знаю, почему его отозвали.


Наверное, потому, что в эпоху Интернета было трудно делиться кодом ... VBA тоже был переведен. Плохая идея.
PhiLho

4

Переходя на следующий уровень, как насчет возможности замены символов?

Увидев такие языки, как Brainf ** k и Whitespace я подумал о создании такого языка: он был бы идентичен C, за исключением того, что вы используете закрывающие фигурные скобки для открытия, открывающие фигурные скобки для закрытия, меняете значения + и -, * и / ,; и:,> и <и т. д.

Концепция - не что иное, как уловка измененного компилятора C. Но, как и в случае с другими ключевыми словами, это заставляет вас переосмыслить некоторые базовые предположения, если вы никогда раньше не думали о таких вещах. Пример:

int foo)int i, char c( }
    int six = 2 / 3:
    int two = six + 4:
    if )i > 0( }
        printf)"i is negative"(:
    {
{

2
эй, мне нравится этот смайлик.
aib

4

Я работаю во французской команде, разрабатывающей программную систему на C #. Несмотря на то, что ключевые слова языка программирования якобы являются английскими, я полагаю, что вам будет очень трудно читать код, поскольку все имена функций, переменные, комментарии к коду, таблицы и столбцы базы данных, технические спецификации, протоколы и т. Д. Находятся в Французский, включая эти милые символы с диакритическими знаками ç, é, è, ù и т. Д. Я даже не уверен, будет ли система работать где-либо еще из-за ошибок локализации, таких как использование запятой как десятичного разделителя по умолчанию.

В остальном WinDev является популярной платформой программирования во Франции, и ее язык программирования WLanguage имеет ключевые слова на французском или английском языках, см. И пример здесь: текст ссылки


resharper поймает любую хрень, зависящую от локали :) используйте 1-месячный тест, чтобы очистить базу кода.
v.oddou

4

Единственный язык, на котором я видел локализацию, - это Excel с его макросами. Если вы попытаетесь суммировать столбец с помощью итальянской версии Office, вам придется писать, SOMMA(A1:A10)а не СУММ. Это позор.

Кстати, просто потому, что это весело, вот как должен выглядеть ваш код с итальянскими ключевыми словами:

se (i < size){
    commuta
        caso 1:
            stampa "hi there"
        normalmente:
            stampa "no, thank you"
} altrimenti {
    stampa "yes, thank you"
}

3

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

PD: Мне кажется, что испанский язык намного лучше английского; но перевод НЕПРАВИЛЬНЫЙ


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

1
Только так , что английский язык является «лучше» , чем испанский язык, что английский имеет больший словарный запас, так что это немного короче писать я не хотел бы , чтобы выучить английский язык как второй язык. Испанский намного логичнее!
Chip Uni

Испанский (как и большинство языков) имеет гораздо больший словарный запас, чем английский; но английский позволяет легко изобретать новые слова и при этом быть понятым. Это делает его очень кратким и простым в использовании по техническим вопросам. Кроме того, английский является более императивным и предпочитает простые предложения (во всяком случае, чтобы избежать двусмысленности), что, возможно, делает его более «естественным» для процедурного программирования. Также заметьте, что я бы никогда не сказал, что английский «лучше» любого другого языка; но БЕЙСИК основан на английском языке, что приводит к нечитаемому беспорядку.
Хавьер

«Испанский (как и большинство языков) имеет гораздо больший словарный запас, чем английский»: неправда. Хорошо известно, что в английском больше слов, чем в любом другом языке, примерно 250 000 против 100 000 для испанского,
Луиджи Плиндж

Один из уроков здесь чисто коммерческий; вы не можете поддерживать локализацию на языки, где сообщество разработчиков VBE, вероятно, составляет менее 1000 человек по всему миру. Microsoft сделала это в 1990-х годах, а затем быстро отказалась. Некоторые уроки переносятся в более крупные сообщества, например, в испанский. Во-первых, вы не можете поделиться своим скриптом с людьми, у которых нет такой же локализованной версии языка.
tripleee

3

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

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

Изменить : Я просто вспомнил свою молодость, когда я вошел в таблицы сопоставления моего встроенного BASIC TRS-80, чтобы переключить ключевые слова на французский. Я мог изменить все ключевые слова, но не мог увеличить ни одно из них. Сделано для забавных программ.


На самом деле. «Мы просто будем использовать [вставить местный язык] для всего, от имен переменных до комментариев - это просто крошечное приложение, кто бы его изменил?» Несколько лет спустя в другом месте: «Да, комментарии ЕСТЬ. Если бы я только знал, что означает« // Meg tudom enni az üveget, nem árt nekem »...» (язык изменен на ударение)
Писквор покинул здание

Я помню, в колледже кто-то вошел в DOS и изменил некоторые команды и сообщения, чтобы они были непристойными, и это все еще работало
JoelFan

3

Не смейся над этим. Несколько лет назад Microsoft анонсировала G # (немецкий Sharp) - C # с немецкими ключевыми словами и API. Конечно, это была первоапрельская шутка, но весь сайт об этом выглядел так реально и профессионально (и находился на microsoft.com). Страшно.

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

Нет, можно использовать ключевые слова и идентификаторы на английском языке. Хотя некоторые могут поспорить, что это должен быть Цвет или Цвет :)


3

В нескольких проектах VBA, над которыми я работал (да, в самом начале моей карьеры), нам приходилось определять версию office, которая была установлена ​​на машине пользователя, и соответствующим образом изменять формулы, используемые в speradsheets.

Поскольку я программирую на португальском языке, "SUM" нужно будет перевести на "SOMA" и так далее и так далее. Я просто не могу себе представить, какой работы потребуется, чтобы сделать это на нескольких языках. Кто-нибудь еще страдал с этой проблемой?


3

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

К счастью, это не обычная практика, и даже не говорящие по-английски, как я, слава Богу, что есть стандартный язык для ключевых слов:

  • легче делиться своей работой.
  • это предотвращает превращение документации в еще больший кошмар, чем он уже является.
  • Английские слова и предложения обычно короткие и синтаксически прагматичны. В литературе латинский язык намного красивее, а в техническом плане - английский рок.

А где остановиться? Вы можете представить себе букву С на древнегреческом?

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

Однако есть один случай, когда использование названий методов и комментариев на родном языке может быть хорошей практикой: в стране третьего мира. Я собираюсь через несколько месяцев в Сенегал, чтобы управлять проектом Django. У Сенегала огромный уровень аналфавитизации, и поэтому уже здорово, что они тратят энергию на улучшение своих знаний в области программирования. Французский является здесь родным языком, поэтому было бы неэффективно заставлять их одновременно изучать компьютерные технологии и новый язык.

Кстати, это будет ваш код с французскими ключевыми словами:

Si (i < taille) {
    cas par cas :
        cas 1:
            afficher "salut"
        défaut:
            afficher "non merci"
} sinon {
    afficher "oui, merci"
}

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


2

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

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

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


Шалом Ури, на Sourceforge также есть ивритский язык программирования (HPL). Как и LOGO, он нацелен на молодых пользователей компьютеров.
TonJ

2

Когда я был ребенком, мы ездили во Францию, и в музее, в котором мы ходили, я помню, как нашел дисплей, на котором показывали, как писать компьютерные программы. Это был своего рода БАЗОВЫЙ вариант, и я отчетливо помню, что он использовал POUR вместо FOR и так далее. Мне было 7 лет, и я только что выучил БЕЙСИК, и мне казалось совершенно естественным, что у французов будет свой диалект вроде этого !!

Наверное , я видел LSE ?


2

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

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

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

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


Ой! Похоже, вы должны опубликовать это на thedailywtf.com
Андре

2

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

Конечно, Perl и Perlers отказываются играть по обычным правилам. Безумный ученый Дамиан Конвей написал модуль Lingua :: Romana :: Perligata, который использует черную магию исходных фильтров, чтобы вы могли писать Perl на латыни!


Я так не думаю. Проблемой является то, что даже если вы знаете английский, вы не можете сказать while (cond) jump_to: label ... Perl. Я имею в виду, как goto или что-то в этом роде.
OscarRyz

большинство идиом типа «естественный язык вроде» Perl вроде «open () или die ()» вполне естественны для меня как говорящего по-немецки. я думаю, английский и немецкий достаточно похожи
bjelli

2

Здесь, в Австралии, нам все еще нужно писать цвет как цвет . Однако меня действительно раздражает, когда другие (австралийские) разработчики, работающие над австралийским проектом, решают, что имена внутренних переменных нужно писать по-американски.


1

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

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


1
Когда у вас большая аудитория, например люди, которые пишут формулы в Excel или создают небольшие эффекты для своей презентации, вам следует подумать о внедрении i18n для «зарезервированных» слов ...
rshimoda

1

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


1

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

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

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

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


0

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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.