Size: a a a

2019 December 30

EM

Evgeny M. in ErlangRus
он на низком уровне функциональный,  на высоком объектно-ориентированный
источник

EM

Evgeny M. in ErlangRus
и это в принципе правильно. Идеальная программа вообще состоит только из i/o, без чистого кода
источник

EM

Evgeny M. in ErlangRus
в пределе большая кнопка бабло напрямую связанная с лотком дял выдачи денег
источник

АН

Авроамэриканец Начрэл in ErlangRus
Evgeny M.
и это в принципе правильно. Идеальная программа вообще состоит только из i/o, без чистого кода
Я тоже говорил об этом. Я предположил что это условное детерменирование, для того что бы можно было считать функцию чистой, что бы было удобно писать код в концепции языка. Потому что бОльшая часть кода веб проектов - это работа с io. А хаскелисты сказали что в их языке все функции чистые.

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

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

Но видимо хаскелисты просто сектанты и не признают очевидных вещей
источник

AB

Alex Bubnov in ErlangRus
Авроамэриканец Начрэл
Я тоже говорил об этом. Я предположил что это условное детерменирование, для того что бы можно было считать функцию чистой, что бы было удобно писать код в концепции языка. Потому что бОльшая часть кода веб проектов - это работа с io. А хаскелисты сказали что в их языке все функции чистые.

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

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

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

AB

Alex Bubnov in ErlangRus
Не функции привязываются к внешнему миру, а их результаты
источник

АН

Авроамэриканец Начрэл in ErlangRus
Alex Bubnov
Не, все функции сами по себе чистые. Это значения типа IO Something грязные и недетерминированные. А функции чистые
Может они это и имели в виду? Люди которые объясняли это, были жестко привязаны к концепциям языка и не говорили вне его терминов. Хотя я предупредил что хаскель не знаю
источник

AB

Alex Bubnov in ErlangRus
Авроамэриканец Начрэл
Может они это и имели в виду? Люди которые объясняли это, были жестко привязаны к концепциям языка и не говорили вне его терминов. Хотя я предупредил что хаскель не знаю
Может быть. Я ж говорю - не договорились.
Я тоже не настоящий сварщик, но в меру моего понимания специфическая обработка рантаймом относится именно к значениям, не функциям.

Можно же спокойно написать цепочку вызовов readLine -> String.toUpper -> writeLine,  где toUpper - абсолютно обычная чистая функция, просто применяемая хитрым образом к IO String.
источник

АН

Авроамэриканец Начрэл in ErlangRus
Alex Bubnov
Не функции привязываются к внешнему миру, а их результаты
Ну io функция же инициирует побочные эффекты - отправляет куда-то запрос. Этого достаточно что бы не считать функцию чистой.

Но меня интересует именно детерменированость функции. Передаём функции 10 раз одно и тоже значение - адрес api random.org и можем 10 раз получить разные ответы.

Наверное детерменирование io функций сводится к типу. Мы можем гарантировать возвращаемый тип. Но не возвращаемое значение
источник

AB

Alex Bubnov in ErlangRus
Вообще, занятный вопрос, конечно - взаимодействие IO с referrential transparency, которую ЕЯПП ты называешь детерминированностью.
источник

AG

Anton Grechnev in ErlangRus
Любая функция с побочным эффектом - не чистая, не понимаю о чем вы дискутируете :)
источник

AB

Alex Bubnov in ErlangRus
Получается, функции, возвращающие IO Something не ref transparent, да
источник

АН

Авроамэриканец Начрэл in ErlangRus
Anton Grechnev
Любая функция с побочным эффектом - не чистая, не понимаю о чем вы дискутируете :)
О детерменированости io функций. Состовляющей чистой функции
источник

АН

Авроамэриканец Начрэл in ErlangRus
Alex Bubnov
Получается, функции, возвращающие IO Something не ref transparent, да
Я не знаю что это значит
источник

AG

Anton Grechnev in ErlangRus
Авроамэриканец Начрэл
О детерменированости io функций. Состовляющей чистой функции
Так вопрос то был изначально о чистоте, какая разница что там с детерминированностью если там есть побочные эффекты
источник

АН

Авроамэриканец Начрэл in ErlangRus
Anton Grechnev
Так вопрос то был изначально о чистоте, какая разница что там с детерминированностью если там есть побочные эффекты
Мне интересна часть о детерменированости
источник

AB

Alex Bubnov in ErlangRus
Авроамэриканец Начрэл
Я не знаю что это значит
Долгая телега, да я и не опишу толково.
источник

AB

Alex Bubnov in ErlangRus
Вообще, io и форсирование вычислений это самая долбанутая часть хаскеля как раз, тут кто угодно в частных случаях запутается
источник

СИ

Сергей Иванов in ErlangRus
Petr Kozorezov
Эту вакансию видели уже все по 10 раз. Искать людей на неё надо как-то иначе чем просто всем писать, и ждать, что кто-то откликнется. Кто хотел уже был там.
это жесть конечно - эрланговские вакансии сносить в эрланговском чатике
источник

YP

Yuri Pipchenko in ErlangRus
Всех с наступающим!
А есть ли способ определить функцию и спеку к ней в одном макросе?
источник