Мовна відносність - це ідея, що мова формує те, як ми думаємо. Моє запитання полягає в тому, наскільки і в якій мірі це стосується програмування?
- Чи деякі рідні, природні мови краще підходять для роздумів про програмування, ніж інші? Наприклад, чи можна сказати наступне коротше в не англійській мові?
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.
- Чи китайськомовний програміст розглядає програмування в кардинально іншому об'єктиві, ніж англомовний програміст, або розбіжності зникають, коли обоє занурені в тему?
- Деякі мови програмування та домени простіше думати на тій чи іншій мові. Наприклад, чи простіше вправити Рубі, якщо ти японець, тому що творець Рубі - японець?
Зауважте, що це питання не зосереджене на тому, як "мови програмування впливають на те, як люди думають про програмування", а на "як природні мови впливають на те, як люди думають про програмування".
Щоб вийти з цього шляху, однією мовою, яка явно має прагматичну перевагу, є англійська . Я думаю , що перевага має мало спільного з мовами програмування вибираючи англійські слова , такі як if
, for
, while
, і do
, так само , як музиканти , які не говорять на італійському не спіткнулася на такі слова , як форте . Це більше стосується спілкування ідей з іншими програмістами, оскільки англійська мова є лінгва-франкою в наші дні, принаймні у світі програмування. Наприклад, щоб задати запитання в StackOverflow, вам дійсно потрібно знати англійську мову і знати її досить добре, якщо ви хочете гарних відповідей. Хоча це звучить як імперіалістичне ставлення, воно справді є правдою на практиці.
Крім того, як внутрішні властивості мов впливають на те, як програмісти, які говорять на них, думають про структури даних, алгоритми тощо? Чи є якісь мови особливо стислими, коли мова йде про логіку та програмування, дозволяючи носіям цих мов мислити швидше?
Implement quick sort
.