Видимо, Яндекс не смог договориться с Олегом Нижниковым о тренингах для своих скалистов, поэтому просто купил Тинькофф 🤔
https://www.kommersant.ru/doc/4501811
https://www.kommersant.ru/doc/4501811
Коммерсантъ
«Яндекс» покупает «Тинькофф» за $5,5 млрд
Подробнее на сайте
[×] Ваше регулярное напоминание, что Профунктор Оптикс пидары
Ладно, теперь обратно к серьезным вещам.
Замечательные ребята из Kowainik (Дмитрий Коваников и Вероника Ромашкина) недавно написали шикарный пост про derivation strategies:
https://kowainik.github.io/posts/deriving
Очень рекомендую — они и пишут хорошо, и подробно разбирают темы. Один из топовых просветительских блогов по хаскелю в моем личном рейтинге!
Замечательные ребята из Kowainik (Дмитрий Коваников и Вероника Ромашкина) недавно написали шикарный пост про derivation strategies:
https://kowainik.github.io/posts/deriving
Очень рекомендую — они и пишут хорошо, и подробно разбирают темы. Один из топовых просветительских блогов по хаскелю в моем личном рейтинге!
Kowainik
Kowainik - Strategic Deriving
A comprehensive guide for deriving in Haskell
Forwarded from Anton Trunov
Конференция DISC-2020 проводится онлайн. При конфе будет воркшоп по TLA+. Для зрителей есть бесплатная (но обязательная) регистрация: http://www.disc-conference.org/wp/disc2020/registration/.
Страница воркшопа: http://conf.tlapl.us/home/?
Страница воркшопа: http://conf.tlapl.us/home/?
conf.tlapl.us
Home :: TLA+ Community Event & Conference
Anton Trunov
Конференция DISC-2020 проводится онлайн. При конфе будет воркшоп по TLA+. Для зрителей есть бесплатная (но обязательная) регистрация: http://www.disc-conference.org/wp/disc2020/registration/. Страница воркшопа: http://conf.tlapl.us/home/?
Отдельно хочу прокомментировать эту новость. TLA⁺ — это язык спецификации, основанный на темпоральной логике действий, что позволяет описывать и верифицировать корректность распределенных систем, моделируя их поведение во времени. Есть отличный доклад от команды Elasticsearch о том, как они с помощью модели на TLA⁺ нашли и исправили ошибку, которая воспроизводилась только в сложных высококонкурентных сценариях. Это уже не «фантазии академиков в башнях из слоновой кости», а самый что ни есть реальный, прагматичный и прикладной способ повышать надежность ПО.
В общем, если вы занимаетесь распределенными системами или системами реального времени, есть смысл поучаствовать. Кто знает, вдруг через какое-то время на месте ребят из Elastic будете именно вы рассказывать, как улучшили ваш проект с помощью методов формальной верификации 😉
В общем, если вы занимаетесь распределенными системами или системами реального времени, есть смысл поучаствовать. Кто знает, вдруг через какое-то время на месте ребят из Elastic будете именно вы рассказывать, как улучшили ваш проект с помощью методов формальной верификации 😉
YouTube
Using TLA+ for fun and profit in the development of Elasticsearch - Yannick Welsch
Elasticsearch is a distributed search and analytics engine based on Apache Lucene. Initially released in 2010, it has quickly become the most popular enterprise search engine, and is commonly used for log analytics, full-text search, operational and security…
Отличный доклад Павла Шульца о том, как из MTL сделать свою собственную Polysemy:
https://www.youtube.com/watch?v=9H000rArbvg
https://www.youtube.com/watch?v=9H000rArbvg
YouTube
After Life by Paweł Szulc at FP in the City Conference
After Life
I'm a huge fan of Free monads, that's no secrete. For a very long time, I've been advocating writing maintainable software using one of the available "effects" library called Polysemy. At work, however, you can not always work with technologies…
I'm a huge fan of Free monads, that's no secrete. For a very long time, I've been advocating writing maintainable software using one of the available "effects" library called Polysemy. At work, however, you can not always work with technologies…
Только что узнал, что не стало моего друга Гриши, с которым мы делали видеоподкаст «ФП для чайника». Уже не доделаем.
Говорят, что для продуктивной работы знать теорию категорий и теорию типов не нужно, а порой даже вредно — причем даже если пишете на хаскеле, где половина стандартной библиотеки щеголяет терминами из теорката. Клепать опердени, перекладывая джейсоны из кафки в постгрю, можно без малейшего понимания, чем является левое сопряжение к забывающему функтору.
Но при этом знание таких вещей радикальным образом расширяет не только кругозор, но и позволяет придумывать новые очень крутые вещи. Например, есть такая конструкция как селективный (выбирающий?) функтор (selective functor) — «подумаешь, еще одна абстрактная хрень, кому она нужна», всё такое. Но, взяв эти функторы за основу, была написана очень изящная библиотека Parsley, о которой ее автор рассказывал на недавнем MuniHac. Или знание о симметричных моноидальных категориях позволило Олегу Нижникову сделать библиотеку Volga, которая позволяет упростить построение и оптимизацию вычислений в распределенных системах.
С другой стороны — в самом начале теоркат и правда больше вреден, чем полезен. Есть большой соблазн начать сыпать терминологией и концепциями без соотнесения их с реальностью, контекстом и вычислительными ограничениями. Я считаю, что не знаю теорию категорий хоть сколь-нибудь вменяемо, поэтому очень аккуратно стараюсь притягивать рассуждения из нее в обыденное программирование, но даже те знания, что есть, помогают в голове выстраивать более цельную картину и видеть новые связи.
Значит ли это, что всем поголовно надо начать заниматься математикой? Да ни в коем случае. У каждого свой путь и свои подходы, которые заставляют понимание «щелкнуть». Но я надеюсь, что примеры выше еще раз покажут, что насмехаться над «академиками в башнях из слоновой кости», по меньшей мере, неразумно.
Но при этом знание таких вещей радикальным образом расширяет не только кругозор, но и позволяет придумывать новые очень крутые вещи. Например, есть такая конструкция как селективный (выбирающий?) функтор (selective functor) — «подумаешь, еще одна абстрактная хрень, кому она нужна», всё такое. Но, взяв эти функторы за основу, была написана очень изящная библиотека Parsley, о которой ее автор рассказывал на недавнем MuniHac. Или знание о симметричных моноидальных категориях позволило Олегу Нижникову сделать библиотеку Volga, которая позволяет упростить построение и оптимизацию вычислений в распределенных системах.
С другой стороны — в самом начале теоркат и правда больше вреден, чем полезен. Есть большой соблазн начать сыпать терминологией и концепциями без соотнесения их с реальностью, контекстом и вычислительными ограничениями. Я считаю, что не знаю теорию категорий хоть сколь-нибудь вменяемо, поэтому очень аккуратно стараюсь притягивать рассуждения из нее в обыденное программирование, но даже те знания, что есть, помогают в голове выстраивать более цельную картину и видеть новые связи.
Значит ли это, что всем поголовно надо начать заниматься математикой? Да ни в коем случае. У каждого свой путь и свои подходы, которые заставляют понимание «щелкнуть». Но я надеюсь, что примеры выше еще раз покажут, что насмехаться над «академиками в башнях из слоновой кости», по меньшей мере, неразумно.
YouTube
MuniHac 2020: Jamie Willis - Exploring Parsley
Title: Exploring Parsley
Speaker: Jamie Willis
Parser combinator libraries are a popular approach to writing parsers in the functional world. In particular, monadic parser combinators take centre stage. But when performance of these parser combinators become…
Speaker: Jamie Willis
Parser combinator libraries are a popular approach to writing parsers in the functional world. In particular, monadic parser combinators take centre stage. But when performance of these parser combinators become…
Forwarded from Oleg ℕižnik
Я для себя понял, что если воспринимать любые абстракции просто из их формального определения, то со временем это будет приводить к ужасной неоптимальности, вплоть до полной неспособности пользоваться.
Чутка если копнуть теоркат, там миллион примеров определений, которые даются десятью непохожими друг на друга способами.
Нужно сидеть часами понимать, почему эти определения - одно и то же.
Зато, когда склеиваются - сразу появляется какая-то волшебная область, которую можно расширять, как буддистский пруд
Чутка если копнуть теоркат, там миллион примеров определений, которые даются десятью непохожими друг на друга способами.
Нужно сидеть часами понимать, почему эти определения - одно и то же.
Зато, когда склеиваются - сразу появляется какая-то волшебная область, которую можно расширять, как буддистский пруд
Forwarded from Oleg ℕižnik
Поэтому в CS часто бывают штуки, которые начинают вот так "склеиваться" или "ветвиться" или ещё что-то. Ты начинаешь подозревать, что они соотносятся с какой-то абстракцией, без ассоциаций это подозрение не возникнет. И только после того, как покопаешь подозрение, что-то может родиться полезное
В четверг Владислав Завьялов расскажет, как писать на хаскеле GUI-приложения:
https://serokell.io/blog/gui-programming-talk
https://serokell.io/blog/gui-programming-talk
Serokell Software Development Company
Introduction to GUI Programming in Haskell
Learn how to do GUI programming in Haskell with GTK+.
Forwarded from Anton Trunov
Записи с TLA+ Community Event (https://conf.tlapl.us.home)
https://www.youtube.com/playlist?list=PLWLcqZLzY8u8EA8UlsZ5xKMvtUoeGr5R_
https://www.youtube.com/playlist?list=PLWLcqZLzY8u8EA8UlsZ5xKMvtUoeGr5R_
YouTube
TLA+ Community Event, 2020 - YouTube
https://blog.cloudflare.com/cloudflare-worker-with-webassembly-and-haskell — неожиданный пост в блоге Cloudflare о Haskell и WebAssembly
The Cloudflare Blog
Let's build a Cloudflare Worker with WebAssembly and Haskell
Let's combine the power of Haskell and WebAssembly in a Cloudflare Worker!
Новый моноширинный шрифт JuliaMono, заточенный под программирование и содержащий больше 10к глифов Юникода: https://juliamono.netlify.app
Мой билд Iosevka все равно пока нравится больше, конечно, но JuliaMono выглядит очень приятно и уж явно не хуже JetBrains Mono.
Мой билд Iosevka все равно пока нравится больше, конечно, но JuliaMono выглядит очень приятно и уж явно не хуже JetBrains Mono.
Система эффектов
https://github.com/KingoftheHomeless/in-other-words
in-other-words, целью которой является представление эффектов выших порядков и решение проблемы O(n²) инстансов:https://github.com/KingoftheHomeless/in-other-words
GitHub
GitHub - KingoftheHomeless/in-other-words: A higher-order effect system where the sky's the limit
A higher-order effect system where the sky's the limit - GitHub - KingoftheHomeless/in-other-words: A higher-order effect system where the sky's the limit