Классы типов есть и в кложуре. IMO монады/моноиды/функторы — это неправильные абстракции для размышлении о коде. Код — не алгебраическая структура, а алгоритм, либо, дуально, логический вывод. Поэтому надо не из теорката притаскивать абстракции, а из матлогики.
теоркат хорош тем, что позволяет перетаскивать результаты из одной области математики в другую. и где же перетащенные результаты из математики в хаскел?
Кроме "`+` моноид" я не видел ничего, да и то в Хаскеле отдаётся на веру программисту — можно сделать экземпляр MonoidPlus с немоноидальной операцией, типы не помогают.
Единожды доказанные законы класса типов для данного инстанса позволяют мнговенно включить этот тип в данный класс и применять к нему (обоснованно) все функции и преобразования данного класса, коих немало
а тут доказал, что моноид, обернутый в аппликативный функтор, сохраняет своюю моноидальность (хоть и необязательно коммутативность), видишь в коде моноид, видишь аппликатив - значит результат гарантированно моноидален и можно его редьюсить в параллель например
а тут доказал, что моноид, обернутый в аппликативный функтор, сохраняет своюю моноидальность (хоть и необязательно коммутативность), видишь в коде моноид, видишь аппликатив - значит результат гарантированно моноидален и можно его редьюсить в параллель например
Насколько часто вы формально будете доказывать валидность при ежедневном написании бизнес логики?)
зависит от того что вы ежедневно пишете и как это формализуете. судя по вашей иронии, опердени как предел мечтаний. предположу, что вы из лагеря “программистам математика нинужна”
зависит от того что вы ежедневно пишете и как это формализуете. судя по вашей иронии, опердени как предел мечтаний. предположу, что вы из лагеря “программистам математика нинужна”
Нет, я не из этого лагеря, но тут стоит вопрос практического применения