TG Telegram Group Link
Channel: dd if=/dev/stuff of=/dev/tg
Back to Bottom
Реализация STLC на хаскеле с использованием индексов/уровней де Брёйна: https://hirrolot.github.io/posts/how-to-keep-lambda-calculus-simple.html 🔥
Шахматы на тайп-левеле, причем с реализацией не только на TypeScript, но и на Rust:
https://github.com/Dragon-Hatcher/type-system-chess
Программа на Rust более чем в пять раз длиннее, чем на TS. Любопытные выводы автора:
• TS — писать на тайп-левеле почти приятно, но не хватает математики и let-байндингов (о да!).
• Rust — больше никогда!!1, очень медленно и многословно.
Old, but gold: при определенных условиях компилятор раста генерировал имя типа размером 350 мегабайт. Хорошо все-таки, когда система типов Тьюринг-полна 🤤
TLA+, но с человеческим синтаксисом:

https://github.com/informalsystems/quint

Quint is inspired by TLA+ but provides an alternative surface syntax for specifying systems in TLA. The most important feature of our syntax is that it is minimal and regular, making Quint an easy target for advanced developer tooling and static analysis.
Начало новой серии статей о Effect:
https://ybogomolov.me/01-effect-intro 🔥
Рассказываю, что такое Effect<R, E, A>, как создавать, комбинировать, и интерпретировать эффект-выражения. Плюс небольшой бонус — функция effectify для конвертации Node-style callbacks в эффект-выражения.
В твиттере показали красивое: https://github.com/gvergnaud/hotscript
Вторая статья из серии “Intro to Effect”: https://ybogomolov.me/02-effect-handling-errors

Рассказываю о способах обработки ошибок в Effect и механизмах организации повторяемых вычислений (retry policies).
Typed Design Patterns for the Functional Era

This paper explores how design patterns could be revisited in the era of mainstream functional programming languages.

https://arxiv.org/abs/2307.07069
Третья статья из серии "Intro to Effect": https://ybogomolov.me/03-effect-managing-dependencies 🔥

Сегодня рассказываю про сервисы, слои (layers), и способ сделать DI без IoC-контейнеров.
Четвертая статья из серии "Intro to Effect": https://ybogomolov.me/04-effect-concurrency

Продолжаю цикл статей про Effect рассказом о конкурентном выполнении задач и fiber-based runtime.
Пятая статья из цикла “Intro to Effect”:
https://ybogomolov.me/05-effect-stm

Разбираю тему software transactional memory (STM).
https://nostarch.com/learn-physics-functional-programming — изучение ньютоновской физики при помощи Haskell. Признаться честно, я чуть удивлен, что используется не какой-нибудь язык с завтипами вроде Agda, Lean, или Idris.
https://morph.so/blog/the-personal-ai-proof-engineer/ — первый релиз LLM-проекта Morph, нацеленного на помощь в написании доказательств с помощью Lean.
Design Guidelines for Domain-Specific Languages
Очень хороший пейпер, предлагающий 26 гайдлайнов, которыми следует руководствоваться при проектировании DSL.
Слайды доклада Томаса Микулы «Monads Are Not About Sequencing»: https://continuously.dev/presentations/Monads-not-about-sequencing_20231201.pdf
Видео доклада пока не выложили, но слайды стоят того, чтобы их прочесть, особенно если вы думаете, что понимаете монады 🙃
HTML Embed Code:
2024/03/29 11:45:56
Back to Top