Стратегии вычисления: нормальный порядок, аппликативный, ленивость
Почему одно и то же лямбда-выражение может завершиться или зациклиться в зависимости от того, какой редекс вы сократили первым — и как из этого выросли строгие языки, …
33 материалов в этой теме.
Почему одно и то же лямбда-выражение может завершиться или зациклиться в зависимости от того, какой редекс вы сократили первым — и как из этого выросли строгие языки, …
Разбираем, чем переменная-параметр отличается от переменной из внешнего мира, как правильно подставлять выражение вместо переменной и почему наивная замена букв ломает …
Почему в ФП повторение делают рекурсией, как устроен стек вызовов, что такое хвостовой вызов и TCO, как превращать рекурсию в хвостовую аккумулятором, и что делать в …
Как написать факториал в языке, где у функций нет имён: приём открытой рекурсии, вывод комбинатора Y с полной раскруткой редукций, его боевой вариант Z для JavaScript и …
Как устроены внутри персистентные векторы, HAMT, finger tree и зипперы, почему амортизация ломается под персистентностью и сколько на самом деле стоят неизменяемые …
Как построить кортеж, запись и связный список, когда в языке есть только функции: пара Чёрча, два способа кодировать списки, полные раскрутки редукций и рабочий код на …
Обзорная статья трека: что такое парадигма как инженерное понятие, по каким осям парадигмы различаются, откуда они взялись исторически, как они смешиваются в реальных …
Почему исключения и null плохо масштабируются, как Option, Either и Result делают отказ частью типа, чем аппликативное накопление ошибок отличается от монадического …
Весь синтаксис лямбда-исчисления — три конструкции и два соглашения о скобках; учимся читать выражения вслух и переводить их в стрелочные функции JavaScript и Python.
Почему запрет на изменение данных убирает целый класс багов, как обновлять неизменяемые структуры без квадратичного копирования и сколько это реально стоит в проде.
Монада — не философия, а ответ на конкретную боль: как соединять функции, которые возвращают не значение, а значение в контейнере. Разбираем от лестницы if-ов до законов, …
Язык программирования из трёх правил, придуманный до появления компьютеров: зачем он нужен практикующему разработчику и как читать первые редукции.
По этому запросу ничего не найдено.