Лингвистическая относительность - это идея, согласно которой язык формирует наше мышление. Мой вопрос: сколько и в какой степени это относится к программированию?
- Являются ли некоторые естественные языки более подходящими для размышлений о программировании, чем другие? Например, можно ли более кратко изложить следующее на неанглийском языке?
Select a pivot. Move all the items less than the pivot to one side of the list, and all the items greater than the pivot to the other side.
- Видит ли китайскоязычный программист программирование в совершенно ином объективе, чем англоязычный программист, или различия исчезают, когда оба погружаются в предмет?
- Являются ли некоторые языки программирования и домены более понятными на одном или другом языке? Например, проще ли выманивать Ruby, если вы японец, потому что создатель Ruby - японец?
Обратите внимание, что этот вопрос сфокусирован не на том, «как языки программирования влияют на то, как люди думают о программировании», а на «как естественные языки влияют на то, как люди думают о программировании».
Чтобы избавиться от этого, один язык, который имеет прагматическое преимущество, это английский . Я думаю , что преимущество имеет мало общего с языками программирования выбирая английские слова , такие как if
, for
, while
, и do
, так же , как музыканты , которые не говорят на итальянском не споткнулся на такие слова , как форте . Это в большей степени связано с обменом идеями с другими программистами, так как в наши дни английский язык является языком общения, по крайней мере, в мире программирования. Например, чтобы задать вопрос в StackOverflow, вам действительно нужно знать английский язык и знать его очень хорошо, если вы хотите получить хорошие ответы. Хотя это звучит как империалистическая позиция, на практике это действительно так.
Кроме того, как внутренние свойства языков влияют на то, как программисты, говорящие на них, думают о структурах данных, алгоритмах и т. Д.? Какие-либо языки особенно лаконичны, когда речь заходит о логике и программировании, позволяя носителям этих языков мыслить быстрее?
источник
Implement quick sort
,Ответы:
Ах, гипотеза Сапир-Уорфа против войн с гипотезой о глубокой структуре Хомского ...
Программирование это математика. Математика - это прикладная философия. Тогда возникает вопрос, какой естественный язык может точно описать математические понятия без значительных головных болей. Иными словами, с какими языками можно легко разобраться в аристотелевской метафизике?
Пресловутый «дикий» язык может иметь начальную трудность , выражающие абстракции первого порядка, которые необходимы. Однако, однако! - люди могут выучить новые слова и новые понятия. Древнегреческий не начинался с философских терминов; они должны были быть изобретены и затем перенесены в другие языки.
Полагая, что математика универсальна, я постулирую, что сильная гипотеза Сапира-Уорфа неверна.
источник
Я не знаю, что какой-то конкретный естественный язык поддается лучшему программированию (кроме, может быть, латыни?). Я знаю, что знание более чем одного языка довольно сильно.
Дейкстра сказал в одном из своих последних интервью (как перепечатано в CACM, том 53, № 8, стр. 44):
источник
Турецкий - очень интересный язык, так как в нем есть строгие правила без исключений (которые мне известны), он практически не содержит лишних слов, не имеет грамматического пола, и на слове может выражать столько же, сколько и предложения на английском языке.
разговор по-турецки заставляет меня задуматься о том, чего я хочу достичь, какую информацию я хочу передать, и меньше о том, какие слова использовать.
редактировать
, конечно , турецкий имеет слово представлять биологический пол. Но у этого нет разделения на он / она / это - в турецком «о».
Или по-испански вы бы сказали «profesor / profesora», а по-немецки «Lehrer / Lehrerin». В турецком языке вы должны использовать дополнительные слова для обозначения пола - аналогично английскому.
По-турецки учитель öğretmen. Чтобы указать учительницу, вы бы сказали «kadın öğretmen» - учительница. Но, несмотря на немецкий, где - если не женский, добавив "-in" - по умолчанию мужской, у öğtmen нет пола, как нет.
Еще одна вещь, которая не доступна на турецком языке, это такие статьи, как «el / la», «the», «der / die / das» - так как обычно это просто информация, которая уже доступна контексту.
Но есть слова для выражения «это», «este / esta», «diese / dieses / diese», например «bu».
Это дополнительная информация, так как она указывает на определенный объект.
источник
Я думаю, что более вероятно, что язык программирования, который вы используете, будет формировать то, как вы думаете о проблеме, имена переменных и классов и т. Д. - это просто символы, представляющие что-то. Хотя весьма вероятно, что программисты в разных культурах думают о программировании по-разному из-за их разговорного языка и способа, которым они учились.
источник
На мой взгляд, естественный язык не имеет значения (или, по крайней мере, не должен иметь значения) вообще, когда речь идет о методах или идеях, которые вы пытаетесь реализовать с помощью своего кода.
Как вы сами сказали, при работе с самим кодом и написании документации по коду английский является наиболее подходящим. Но так как сам код является всего лишь ручным трудом , реальная сила программиста / программиста заключается в том, что его идеи, алгоритмы и тому подобное - а затем язык, на котором эти вещи описаны, совершенно не важен для реального контента.
источник
Это была тема, которая меня очень интересовала в какое-то время, поэтому мое еще большее (теперь) горе, что я не могу найти закладки, которые у меня были тогда.
Я сохранил ссылку, на которую наткнулся на днях : «Разные языки равны разным реалиям?» это немного касается (читайте также комментарии). Некоторые из них интересны.
В любом случае ...
источник
Английский на самом деле довольно эффективный и лаконичный. Перевод на большинство языков сделает идею дольше выразить .
Также общепризнанно, что нет примитивных естественных языков . Все естественные языки в активном использовании имеют одинаковый уровень выразительности. Нельзя сказать, что идеи не формируются языком, но я не думаю, что естественный язык имеет большое влияние.
источник