type inference - "вывод типов" или "определение типа результата"

Переводим термины и придумываем новые, в т.ч. для ЯОС
ритминформ
Сообщения: 31
Зарегистрирован: 23.03.21 11:29

type inference - "вывод типов" или "определение типа результата"

Сообщение ритминформ » 24.03.21 12:30

БудДен писал(а):
24.03.21 10:35
Например, если мы определяем функцию, то компилятор какого-либо языка может выводить тип аргумента из операций, которые над ним делаются в теле функции. В этом случае "определение типа результата" не подойдёт
Очень даже подойдёт.
Компилятор пытается определить ТИП ЗНАЧЕНИЯ РЕЗУЛЬТАТА ВЫРАЖЕНИЯ (операнда), т.е. тип результата. Кстати, и тип значения функции - тоже тип значения результата выражения. А выражение состоит из одной функции.

P.S.
Не надо пытаться дословно переводить слово "inference". Когда я учил техперевод, меня учили, что слово не имеет смысла без контекста.
При обращении к переводчику имеем варианты: ("вывод", "заключение", "умозаключение", "предположение" и т.д.). Судя по контексту словосочетание "type inference" подразумевает процесс , способность выполнять этот процесс (свойсто). Слово "вывод" в данном контексте плохо воспринимается как процесс определения типа. Я предпочел бы "пределение типа результата". Как-то так.

ритминформ
Сообщения: 31
Зарегистрирован: 23.03.21 11:29

Re: Язык программирования Санда

Сообщение ритминформ » 24.03.21 12:39

БудДен писал(а):
24.03.21 10:35
операция конкатенации не должна обозначаться плюсиком. ЕМНИП в Бейсике сделали правильно, а вот в JS - нет.
Душой я с Вами и согласен со мнением (кроме символа ".", который используется при разрешении имён). Однако, жизнь требует смирить наше душевное возмущение и остаться с плюсиком. Так уж исторически сложилось и я не возьму на себя смелость изменять этот подход.

ритминформ
Сообщения: 31
Зарегистрирован: 23.03.21 11:29

Re: Язык программирования Санда

Сообщение ритминформ » 24.03.21 12:53

Павиа писал(а):
24.03.21 11:52
JSON сложно упрощаем до человеческого YML
Даже не знаю как отреагировать на такое высказывание... :O

БудДен
Сообщения: 1920
Зарегистрирован: 07.10.18 14:01

Re: Язык программирования Санда

Сообщение БудДен » 24.03.21 15:16

P.S.
Не надо пытаться дословно переводить слово "inference". Когда я учил техперевод, меня учили, что слово не имеет смысла без контекста.
При обращении к переводчику имеем варианты: ("вывод", "заключение", "умозаключение", "предположение" и т.д.). Судя по контексту словосочетание "type inference" подразумевает процесс , способность выполнять этот процесс (свойсто). Слово "вывод" в данном контексте плохо воспринимается как процесс определения типа. Я предпочел бы "пределение типа результата". Как-то так.
Возможно, термин и неудачен, но люди живут в обществе. Допустим, Вы меня убедите использовать Ваш термин - тогда мы с Вами друг друга поймём, а остальные нас не поймут. Что будем делать в этом случае? Убеждать всех остальных? Ваш вариант в этом случае тоже не безупречен. Предлагаю просто остановиться на том, что мы как-то сумели друг друга понять и оставить данный терминологический вопрос за кормой. Или уж завести отдельную тему в форуме "Русская терминология" по соседству - и там я может быть напишу ещё пару соображений.

БудДен
Сообщения: 1920
Зарегистрирован: 07.10.18 14:01

Re: Язык программирования Санда

Сообщение БудДен » 24.03.21 15:18

ритминформ писал(а):
24.03.21 12:39
БудДен писал(а):
24.03.21 10:35
операция конкатенации не должна обозначаться плюсиком. ЕМНИП в Бейсике сделали правильно, а вот в JS - нет.
Душой я с Вами и согласен со мнением (кроме символа ".", который используется при разрешении имён). Однако, жизнь требует смирить наше душевное возмущение и остаться с плюсиком. Так уж исторически сложилось и я не возьму на себя смелость изменять этот подход.
Ну, я не претендую в том, чтобы участвовать в разработке вашего языка или как-то предлагать его менять. Если осознаёте эту проблему - то можете сами принять то решение, которое Вас устроит. Я только отмечу, что языки, где конкатенация обозначается плюсиком - не факт что в подавляющем большинстве. Так что, вообще говоря, нет, так исторически не сложилось. Возможно, сложилось в 1С. А так, когда операция конкатенации появляется, она может оказаться полезной и для чего-то другого. Например, для векторов + может означать почленное сложение, а конкатенация - приписывание.

ритминформ
Сообщения: 31
Зарегистрирован: 23.03.21 11:29

Re: Язык программирования Санда

Сообщение ритминформ » 24.03.21 16:52

БудДен писал(а):
24.03.21 15:16
P.S.
Не надо пытаться дословно переводить слово "inference". Когда я учил техперевод, меня учили, что слово не имеет смысла без контекста.
При обращении к переводчику имеем варианты: ("вывод", "заключение", "умозаключение", "предположение" и т.д.). Судя по контексту словосочетание "type inference" подразумевает процесс , способность выполнять этот процесс (свойсто). Слово "вывод" в данном контексте плохо воспринимается как процесс определения типа. Я предпочел бы "пределение типа результата". Как-то так.
Возможно, термин и неудачен, но люди живут в обществе. Допустим, Вы меня убедите использовать Ваш термин - тогда мы с Вами друг друга поймём, а остальные нас не поймут. Что будем делать в этом случае? Убеждать всех остальных? Ваш вариант в этом случае тоже не безупречен. Предлагаю просто остановиться на том, что мы как-то сумели друг друга понять и оставить данный терминологический вопрос за кормой. Или уж завести отдельную тему в форуме "Русская терминология" по соседству - и там я может быть напишу ещё пару соображений.
Как можно не понять словосочетание "определение типа результата"? Здесь нет ни одного слова, которое можно понять многознчно. В словосочетании "вывод типа" слово "вывод", как минимум, я воспринял как одну из операций ввода-вывода.

Но, в принципе, это для меня не важно и не стоит обсуждения.

MihalNik
Сообщения: 234
Зарегистрирован: 05.11.18 11:02

Re: Язык программирования Санда

Сообщение MihalNik » 24.03.21 21:52

ритминформ писал(а):
24.03.21 16:52
Как можно не понять словосочетание "определение типа результата"?
Вполне можно неправильно понять. Например, как часть описания заголовка функции.
У программистов нет общего языка. И то что, скажем, в каком-нибудь JS называется функцией, в Обероне будет ближе к понятию модуля.
В данном случае точнее говорить не "определять" или "выводить", а "вычислять".
Павиа писал(а):
24.03.21 11:52
История помнит много таких примеров. Бил-Гейтс каждая домохозяйка сможет писать на Бесике . В результате появились программисты.
Каждый пользователь сможет делать запросы на языке SQL. В результате имеем SQL-программист и NoSQL-программистов.
Каждый пользователь сможет создать свой сайт используя HTML. В результате отдельная профессия верстальщик, фронэндер, и JS-программист
JSON сложно упрощаем до человеческого YML, имеем DevOPS.
Так Гейтс оказался прав, почти вся эта "кодла" не обучена соответствующей деятельности профессионально.
Последний раз редактировалось MihalNik 25.03.21 02:43, всего редактировалось 1 раз.

MihalNik
Сообщения: 234
Зарегистрирован: 05.11.18 11:02

Re: Язык программирования Санда

Сообщение MihalNik » 24.03.21 22:12

БудДен писал(а):
24.03.21 10:35
Насчёт неважности типа, хочу ещё предостеречь от грабель: "1"+1=11. Чтобы на них не попасть, операция конкатенации не должна обозначаться плюсиком. ЕМНИП в Бейсике сделали правильно, а вот в JS - нет.
Можно просто соединять строковые значения идущих подряд выражений, без доп. обозначений.

ритминформ
Сообщения: 31
Зарегистрирован: 23.03.21 11:29

Re: Язык программирования Санда

Сообщение ритминформ » 25.03.21 00:34

MihalNik писал(а):
24.03.21 21:52
Так Гейтс оказался прав, почти вся эта "кодла" не обучена соответствующей деятельности профессионально.
100%
Каждая домохозяйка мнит себя программистом. Как и каждый счетовод называет себя бухгалтером.

ритминформ
Сообщения: 31
Зарегистрирован: 23.03.21 11:29

Re: Язык программирования Санда

Сообщение ритминформ » 25.03.21 00:36

MihalNik писал(а):
24.03.21 21:52
ритминформ писал(а):
24.03.21 16:52
Как можно не понять словосочетание "определение типа результата"?
Вполне можно неправильно понять. Например, как часть описания заголовка функции.
Ну, мне нечего скказать на это. :/ Если словосочетание "определение типа результат" кто-то понимает как часть заголовка функции, то no comments.

Ответить