LINUX.ORG.RU

Программирование на Эсперанто

 , ,


1

1

Друзья, не секрет что LOR богат талантами и интересными личностями.

Вот уже почти месяц тема о программировании на Русском языке лидирует в топе форуме.

(ЯОС - 2020-02)

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

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

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

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

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

Что думает уважаемый ЛОР?

Ответ на: комментарий от monk

объём чего считаем и почему считаем

Не факт, что это объем. Просто обозначение того, что интегрируют по 3 переменным. И любой человек это сразу поймет.

anonymous ()
Ответ на: комментарий от anonymous

точный перевод на русский язык «map»

Сперва бы не помешал однозначный перевод (однозначное толкование) на родной английский. «Думать словами» - это уровень знаний языка грудным ребенком - «мама!», «уа-уа!».

anonymous ()
Ответ на: комментарий от Aswed

Были и исследования с прямо противоположным результатом. Небезызвестный Пинкер предлагал такое (Internal Representation :D). Да и я сам думаю на русском и английском, иногда само так получается.

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

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

token_polyak ()
Последнее исправление: token_polyak (всего исправлений: 1)
Ответ на: комментарий от token_polyak

Согласен.

Это тянет на аутистический спектр (без сопутствующей задержки в развитии).

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

monk ★★★★★ ()
Ответ на: комментарий от Aswed

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

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

monk ★★★★★ ()
Ответ на: комментарий от anonymous

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

Я же тебе написал текст на питоне на этих базовых абстракциях. Почему ты не можешь сказать, что эта программа делает?

monk ★★★★★ ()
Ответ на: комментарий от Aswed

исследования

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

Исследования показали, что на текстовые/речевые задачи испытуемые давали текстовые/речевые ответы?

Интересно, на каком языке думают музыканты, особенно композиторы, или художники-кубисты?

anonymous ()
Ответ на: комментарий от anonymous

Исследования показали, что на текстовые/речевые задачи испытуемые давали текстовые/речевые ответы?

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

monk ★★★★★ ()
Ответ на: комментарий от anonymous

map :: (a -> b) -> [a] -> [b]

Это в каком томе толкового словаря английского языка (говорят, в составлении которого участвовал психически больной) написано?

anonymous ()
Ответ на: комментарий от monk

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

Выбираемый цвет задавался: словами, rgb/cmyk/hls/итп, прозрачным тонированным стеклом, плоской цветной фигурой на белом/черном/пестом/другом фоне, свечением абсолютно черного тела при определенной температуре, или вообще структурным цветом - переливающийся цвет перьев птиц?

anonymous ()
Ответ на: комментарий от anonymous

Потому что не знаю иероглифов.

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

Даже если бы ты написал текст на русском языке не уверен, что разобрался.

Вот то же самое по-русски:

#coding=utf-8
import система, игра
размеры = ширина,высота=320,240
скорость = [2,2]
цвет = 255,255,255
сцена = игра.дисплей.установить_режим(размеры)
тело = игра.изображение.загрузить("игра.bmp")
границы_тела = игра.получить_прямоугольник()
while 1:
    for событие in игра.событие.получить():
        if событие.тип == игра.завершение: игра.выйти()

    границы_тела = границы_тела.сдвинуть(скорость)
    if границы_тела.лево < 0 или границы_тела.право > ширина:
        скорость[0] = -скорость[0]
    if границы_тела.верх < 0 или границы.низ > высота:
        скорость[1] = -скорость[1]

    сцена.заполнить(цвет)
    сцена.нарисовать(тело,границы_тела)
    игра.дисплей.перелистнуть()

Неужели осталось также непонятно?

monk ★★★★★ ()
Последнее исправление: monk (всего исправлений: 1)
Ответ на: комментарий от token_polyak

А названия функций и переменных уже на пиджине.

Я всегда и всем повторяю очень простую вещь: только в списке имён стандартных классов Java SE (не методов), если разбить по заглавным буквам на слова, будет 5000-6000 слов. Я стал смотреть этот список и все слова в нём почему-то знаю. Это значит, что у меня этот словарный запас есть. Т.е. про 50-100 слов - это просто враньё. Выучить 5000-6000 слов - это достаточно большой труд, просто за многие годы он проходит незамеченным. Но если чел не знает эти слова, то ему придётся всё время лазать в словарь и он просто будет хуже работать. Т.е. работодателю невыгоден такой плохой работник. Даже в хобби-проекте он будет хуже работать, т.к. мышление происходит в кратковременной памяти, и каждое лазание в словарь сбрасывает кеш. Ответить на это оппонентам нечего - или сливаются, или переходят на личности, или начинают косить под дурачка и делать вид, что не поняли.

den73 ★★★★★ ()
Ответ на: комментарий от monk

map (в смысле отображение из X в Y), возможно, в ЯОС будет переводиться как «мап». Этим будем рвать шаблон врагам :) Хотя можно ещё перевести как «словарь». А log - это «лог». Потому что традиционно прекрасное греческое слово лог переводят более длинным французским словом «журнал», что есть абсурд.

den73 ★★★★★ ()
Ответ на: комментарий от den73

всё время лазать в словарь

Кстати, со словарём тоже иногда печаль. Вот сейчас переводил пример с китайского питона. 螢幕.標示 - это из pygame pygame.Surface.blit . Но вот в словаре слова blit нету. Кроме https://www.urbandictionary.com/define.php?term=Blit и имени собственного в википедии.

monk ★★★★★ ()
Ответ на: комментарий от token_polyak

Это да, ведь киворды завязаны на английскую грамматику. (do x until y итп., при буквальном переводе на русский получается какой-то ужас)

У меня так:

цикл_до тело кн_цикла_до_если условие

При буквальном переводе было бы:

делай дело, пока не условие.

В чём ужас? На самом-то деле do x until y не выражает того, что x нужно повторять. В меру моего знания английского, x здесь - какой-то непрерывный процесс, например, «копать канаву», а вовсе не «опустить лопату, отрезать землю, поднять лопату, отбросить землю». Именно поэтому я сделал явным слово «цикл», и мой вариант более точный, чем оригинал. Т.е. сами по себе эти конструкции уже на английском уродливы, просто англоговорящие к этому привыкли, как к условности, а иноязычные даже и не знали, что эти конструкции уродливы, если начали учить программирование раньше языка.

den73 ★★★★★ ()
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от token_polyak

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

И из языка какой страны слово blit?

И почему отраслевые термины «функция», «замыкание», «целое», «символ» мы не взяли в неизменном виде как «фанкшн», «кложэ», «инт», «чар»?

monk ★★★★★ ()
Ответ на: комментарий от monk

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

Нет. Только часть. Это можно видеть по куче примеров: нога (даже не знаю, как по латыни будет), живот, близорукость, паровоз, самолёт, нос и корма и т.п. В программировании - массив, прерывание, запись.

den73 ★★★★★ ()
Ответ на: комментарий от monk

И из языка какой страны слово blit?

США. Сокращение «bit block transfer».

И почему отраслевые термины «функция», «замыкание», «целое», «символ» мы не взяли в неизменном виде как «фанкшн», «кложэ», «инт», «чар»?

Потому что кто-то заморочился с переводом когда всё это впервые появилось в СССР. В других отраслях всё время измеряют штангенциркулями и протягивают шланги.

token_polyak ()
Ответ на: комментарий от den73

нога, живот, нос

А это передовые технологии, про которые в России узнали от немцев?

близорукость

Но большинство медицинских терминов не переведено, и языком медицины остается грека и латынь.

паровоз, самолет

И samochód, и вертолёт. Но переводы случаются намного реже, чем заимствования.

корма

А это хиндустанское слово :D

token_polyak ()
Ответ на: комментарий от anonymous

оттуда что ужасно надоели, мягко говоря, эти бессмысленные распилы бабла на всякую ерунду типа бесполезных «отечественных процессоров», «отечественных телефонов», «отечественных OS путём bolgenos-like обработки linux». и просто тошнит от этой всей идеология в стиле «рашка не такая как все, они все плохие, прогнивший запад».

wtj12 ()
Ответ на: комментарий от den73

Выучить 5000-6000 слов - это достаточно большой труд

Зачем их учить? IDE всегда дает подсказку. Например есть объект типа итератор контейнера, навел на него и весь перечень методов перед тобой, по каждому методу тут же можно почитать help.

anonymous ()
Ответ на: комментарий от monk

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

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

основная причина неприятия русскоязычных языков программирования

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

Ты потратил десятилетие на осиливание английского языка, а теперь кто-то вдруг сможет писать программы не приложив таких же усилий. Обидно.

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

wtj12 ()
Ответ на: комментарий от token_polyak

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

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

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

Можно в цифрах по медицине, к примеру?

den73 ★★★★★ ()
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от wtj12

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

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

Если язык учится за ночь, то нет причины ломать копья о том, на каком языке должны быть программы - нет никакой разницы.

Но это, конечно же, именно наглая, а не простая, ложь. В реальности за день можно выучить 2-3 десятка слов, и потом нужно их постоянно повторять. Т.е. нужно тратить по несколько часов в день на наращивание навыков языка, как минимум в течение нескольких месяцев. И это, конечно же, не даст владения языком, оно нарабатывается годами. Даже родной человек ребёнок учит несколько лет.

den73 ★★★★★ ()
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от wtj12

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

Какая разница? У них внутренний диалог также может быть на нескольких языках, но всё равно словами.

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

А технический хинди за одну ночь осилишь?

monk ★★★★★ ()
Ответ на: комментарий от anonymous

Отображающий функционал - это нихрена не словарь. Ты уже в трех соснах заплутал.

Сообщение дочитай полностью. Его map не из хаскеля, а из C++. И там как раз словарь.

monk ★★★★★ ()
Ответ на: комментарий от monk

А технический хинди за одну ночь осилишь?

Тум дивани, бхаи? Запросто. (потому что технический хинди - это английский, хоть и несовершенный)

token_polyak ()
Последнее исправление: token_polyak (всего исправлений: 1)
Ответ на: комментарий от wtj12

Изложи, пожалуйста, историю Crypto AG в трёх-четырёх предложениях. Потому что ты топил за западную цивилизацию, за демократию и всё прочее хорошее. А Crypto AG это прекрасный пример того, что из себя представляет эта западная цивилизация. После этого можно будет перейти к твоему следующему вранью. Если же ты откажешься изложить историю про Crypto AG, то ты просто вообще врун.

den73 ★★★★★ ()
Ответ на: комментарий от monk

Вверху квадратик того цвета, который надо выбрать. Внизу два квадратика: один нужного цвета, второй - другого.

И где тут «слова»? Цвет задавался «плоской цветной фигурой на белом/черном/пестом/другом фоне». Задачу классификации каждый биологический вид решает по разному. У кого-то классификация по насыщенности зеленого и яркости. У кого-то по яркости, жесткости, влажности (например «цвет» снега у народов севера). При разных классификациях некоторые не различают синие цвета, некоторые - «цвета» снега. Слова и язык - тут только как отображение (следствие) этой классификации.

anonymous ()
Ответ на: комментарий от anonymous

Их стали забывать на ЛОРе последнее время. Даже трут посты иногда. В то время как это очень важно для поддержания стабильной дискуссии. Тян следует воспринимать как тян только после того как она доказала что она тян.

eternal_sorrow ★★★★★ ()
Ответ на: комментарий от token_polyak

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

den73 ★★★★★ ()
Ответ на: комментарий от den73

есть причина - меня тошнит от ваших кириллических сокращений, выглядит отвратительно. смотрел ваш «код» по ссылке в заголовке темы.

с тех. английским проблем не возникает даже у школьников. тебя поэмы на нём никто не просит писать.

wtj12 ()