Ayrat
короче, в этом случае скала тебе прям в лицо из базуки стреляет и никак не помогает. Ебаные имплиситы. А без них тебе придётся писать .map(function)(context) .filter(function)(context) .flatMap(x -> x.map(function)(context) )(context)
Ayrat
Ayrat
в общем, иметь ЛЕНИВЫЕ таски (футуры, асинки) - это на самом деле супер бонус
Ayrat
а шедулить их уже в момент запуска
Ayrat
я просто не смог заставить себя втаскивать в проект всю эту котовую ссанину и решил уж делать на футурах до конца
Ayrat
(надо просто взять за правило ЯВНО объявлять НЕЯВНЫЙ контекст для всего файла, если где-то в файле есть слово Future)
Ayrat
чтобы случайно не втащить самому себе
Anonymous
а мне вот в cats Validated нравится. пока больше ничего не нравится.
Anonymous
но я тоже везде Future использую и не ебу свой и без того многострадальный мозг
Anonymous
Кстати, хорошая книга.
Ayrat
очень годная
Anonymous
очень годная
интересно, что еще есть у этого автора
Ayrat
можно tldr?
используйте ZIO!
Ayrat
(покупайте мои курсы)
Igor
спасибо, но у меня purescript хотя он и в нем шарит 🤔
Anonymous
ниправда
Anonymous
там годно про IO на Хаскеле написано
Anonymous
2/3 хаскелистов по-моему сами этого не понимают судя по туториалам
Ayrat
ну нет
чо бы это нет. Там в конце так и написано. И в целом начинается во второй половине
Anonymous
во второй - да
Anonymous
а первая половина хороша
Anonymous
особенно забавно как он укатал IO ~> SocketIO
Dr. Friedrich
Ayrat
Ты только настоящим программистам на Scala такого не говори.
я иногда им говорю в скала чате. Местные корефаны меня там говнокодером считают. Плачу в подушку по ночам
Dr. Friedrich
Плати
Denis
футуры вроде чуть побыстрее зио
Denis
так что ты не так уж и не прав
Ayrat
футуры вроде чуть побыстрее зио
в плане РАЗРАБОТКИ точно быстрее)))
Denis
Тогда вообще супер
Ayrat
футуры вроде чуть побыстрее зио
вот это честно говоря меня очень мало волнует, т.к. лично у меня все эти футуры в IO используются и там примерно такая картина (предположим) ZIO overhead - 700us на операцию Future overhead - 70us на операцию Kafka call overhead - 7000us на операцию Prometheus call overhead - 1000us C* call overhead - 1500us то есть будет 9500 + 700 или 9500 + 70 в целом похуй)
Igor
футуры вроде чуть побыстрее зио
Видел бенчмарки Дегоза там футуры были раз в 100 медленнее (правда это было год-два назад)
Ayrat
Видел бенчмарки Дегоза там футуры были раз в 100 медленнее (правда это было год-два назад)
опять же, это всё очень интересно только если на них гонять биткоин майнеры
Denis
Видел бенчмарки Дегоза там футуры были раз в 100 медленнее (правда это было год-два назад)
вот год два назад как раз таки да, но сейчас я слышал что все поменялось
Ayrat
ну и далее чтобы упереться в ботлнек выбранного асинк фреймворка надо идеально оттюнить лоад балансер партици кафки дата модель в БД убрать нахуй лаги в сети
Ayrat
и вот ТОГДА мы сможем почувствовть оптимизации от лысого
Ayrat
короче, не в этой жизни
Ayrat
а как же виртуалки:?
ну да, ещё всякие докеры, хуёкеры, сервис дискавери
Ayrat
чо уж тут волноваться за скорость футур.
Ayrat
Но если есть упоротые которые фибоначи на футурах считают, то да.
Ayrat
Потому что его медлительность незаметна на фоне всего остального
Anonymous
чо уж тут волноваться за скорость футур.
у него позиция такая, что он закладывает фундамент программирования в 22 веке. как, собственно, и у всех хаскелистов и иже с ними.
Anonymous
в этом смысле я его понимаю, человек воюет за "правильные" абстракции как некогда Эвклид.
Anonymous
но в том, что именно это те самые правильные абстракции я до сих пор не убежден, хотя работать с метаописание канкаренси неизмеримо приятнее, чем низкоуровнево, с примитивами синхронизации.
Anonymous
но пока что CSP мне нравится гораздо больше. вся эта говнина из IO и фибров или как их там гораздо легче пишется/читается и понимается неподготовленным человеком на Го или любым CSP-подобным кодом с ченнелами и блокированием на чененлах по перенаполнению буффера/ожиданию события.
Ayrat
но пока что CSP мне нравится гораздо больше. вся эта говнина из IO и фибров или как их там гораздо легче пишется/читается и понимается неподготовленным человеком на Го или любым CSP-подобным кодом с ченнелами и блокированием на чененлах по перенаполнению буффера/ожиданию события.
Мне в целом каналы больше нравятся по другой причине. Что обмен данными осуществляется детерминированно (когда канал отдаёт или принимает), а не хуй пойми когда. Этот "эффект-трекинг" я нашёл полезнее всех этих абстракций
Ayrat
ну и копирование объектов, по каналам же обычно копии летают, а не ссылки.
почему это? если объект иммутабельный логично ссылки кидать
Anonymous
хотя, наверно зависит от контекста и т.д.
Ayrat
это ж редкость
Ну хз, в фшарпе рекорды по ссылке передаются)
Ayrat
ну если они не структуры (а они по умолчанию не структуры)
Anonymous
а, не, я про языки, где ты решаешь - передавать по ссылке или копию
Anonymous
тот же Го
Vladislav
https://twitter.com/fillpackart/status/1280055397416665089?s=21
Ilya
Фил испортился, чота не работает.
Aleksandr
Это же тот самый Фил. Все что он пишет - оно вот такое
Vasiliy
Фил устал наверное. Работа, стримы, статьи, семья.
Vladyslav
а что неправду что ли написал?
Ilya
Ну может быть про себя и правду написал. Кто ж знает.
Vladyslav
ну получается не только про себя
Ilya
А про кого?
Vladyslav
про много кого
Ilya
Ясно.
Anatoly
про много кого
например, про строителей, ремонтников, дорожников, етс
Anatoly
если ты делаешь хуёво или твоя задача - доить на суппорте, то отрасль неважна
Vladyslav
если говно сделать хорошо, то просто будет хорошее говно
Крылатый
https://twitter.com/fillpackart/status/1280055397416665089?s=21
Час в день? Красиво живёт.