у нас есть функция User -> CreditCard option а нужна нам User option -> CreditCard option Как нам из первой получить вторую? Ну можно взять функцию (User -> CreditCard option) -> (User option -> CreditCard option)
Это функция высшего порядка, потому что оперирует другими функциями
Видимо, я пропустил, потому что не знаю о чем речь)
Это нормально, разным людям понятны разные объяснения. Лично я склоняюсь к тому, что надо и Милевского (или Милевски?) почитать, и инфографику посмотреть и попытаться где-то применить в своей сиюминутной задаче.
Я попытался объяснить свою мотивацию во вступлении, но, возможно, получилось не очень удачно.
Я не имел ввиду, что теория категорий или аналогии с коробочками - плохо, и такие статьи не нужны. Нужны, это просто другой взгляд на задачу и ее решение. Восприятие субъективно, мне всегда не хватало в дополнение к теории и аналогиям каких-то практических примеров. В данной статье мне нравится первая ее часть, где мы начинаем с разработки API оплаты, но код получается запутанный и мы постепенно придумываем, как избавится от этой запутанности. У нас получается паттерн. Я даже не хотел бы спорить, как этот паттерн надо называть и точно ли это Монада (наверно, напрасным было примечание про Promise), но ведь его надо как-то называть?
Вторая часть статьи, после "Поздравляю! Вы только что открыли Монаду", лично мне уже ничего для понимания не дает (возможно, как раз после тех постов с картинками), и я не хотел ее переводить. Но мне показалось, что нельзя перевести часть материала или добавлять отсебятину, так что перевел все как есть.
Это первая статья из цикла. Далее там начинаются всякие интересные эффекты, если у нас коробочка лежит в коробочке. Она подчеркнуто конкретна и довольно сильно разжевана. Поэтому предназначена, скорее для тех, кто только пытается понять, как и где ему монаду применить в реальной практике, чем для программистов на haskell.
Я тоже не поленился и перешел. Автор анализирует манифест, но строчки "То есть, не отрицая важности того, что справа,мы всё-таки больше ценим то, что слева.", он почему-то не заметил.
у нас есть функция
User -> CreditCard optionа нужна нам
User option -> CreditCard optionКак нам из первой получить вторую? Ну можно взять функцию
(User -> CreditCard option) -> (User option -> CreditCard option)Это функция высшего порядка, потому что оперирует другими функциями
Видимо, я пропустил, потому что не знаю о чем речь)
Это нормально, разным людям понятны разные объяснения. Лично я склоняюсь к тому, что надо и Милевского (или Милевски?) почитать, и инфографику посмотреть и попытаться где-то применить в своей сиюминутной задаче.
Автора поправил, спасибо!
Я попытался объяснить свою мотивацию во вступлении, но, возможно, получилось не очень удачно.
Я не имел ввиду, что теория категорий или аналогии с коробочками - плохо, и такие статьи не нужны. Нужны, это просто другой взгляд на задачу и ее решение. Восприятие субъективно, мне всегда не хватало в дополнение к теории и аналогиям каких-то практических примеров. В данной статье мне нравится первая ее часть, где мы начинаем с разработки API оплаты, но код получается запутанный и мы постепенно придумываем, как избавится от этой запутанности. У нас получается паттерн. Я даже не хотел бы спорить, как этот паттерн надо называть и точно ли это Монада (наверно, напрасным было примечание про Promise), но ведь его надо как-то называть?
Вторая часть статьи, после "Поздравляю! Вы только что открыли Монаду", лично мне уже ничего для понимания не дает (возможно, как раз после тех постов с картинками), и я не хотел ее переводить. Но мне показалось, что нельзя перевести часть материала или добавлять отсебятину, так что перевел все как есть.
Это первая статья из цикла. Далее там начинаются всякие интересные эффекты, если у нас коробочка лежит в коробочке. Она подчеркнуто конкретна и довольно сильно разжевана. Поэтому предназначена, скорее для тех, кто только пытается понять, как и где ему монаду применить в реальной практике, чем для программистов на haskell.
"Она схватила ему за руку и неоднократно спросила: где ты жевал папку?" (C)
Я тоже не поленился и перешел. Автор анализирует манифест, но строчки "То есть, не отрицая важности того, что справа,мы всё-таки больше ценим то, что слева.", он почему-то не заметил.