Size: a a a

Elm Lang сообщество разработчиков

2018 March 16

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Cmd.none - нейтральный элемент для Cmd. Обособленной операции для двух Cmd нет - она спрятана в Cmd.batch
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Это реализация "интерфейса" моноида. Реализация функтора, это Cmd.map очевидно
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
Ну то есть если говорить очень просто, то моноид - это сущность, у которой есть условный 0 и операции, комбинирующие сущности в одну того же типа?
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
"Операция для комбинирования двух значения в одно" + "Некое значение, которое не влияет на сумму, будучи добавлено к оной"
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Cmd.batch [Cmd.none, c]
 == Cmd.batch [c]
 == Cmd.batch [c, Cmd.none]
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Это первый закон моноида
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Второй:
Cmd.batch
 [ a
 , Cmd.batch [b, c]
 ]
 == Cmd.batch
 [ Cmd.batch [a, b]
 , c
 ]
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
с этой точки зрения например List тоже является моноидом? [] – нейтральный элемент, конкатенация списков - операция комбинирования, и [a, b] ++ [c] == [a] ++ [b,c]
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Да
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
круто, становится яснее)
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
может завести репу где через примеры на эльме объяснять фп термины для несведущих?
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Можно :)
источник

MK

Mikhail Korepanov in Elm Lang сообщество разработчиков
такое есть для JS у фрисби
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Для JS есть, да. Но надо для Elm
источник

RS

Roman Salnikov in Elm Lang сообщество разработчиков
Mikhail Korepanov
такое есть для JS у фрисби
а можно ссылку? чтобы если что по аналогии пойти
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
fantasy-land, небось, имеется в виду
источник

MK

Mikhail Korepanov in Elm Lang сообщество разработчиков
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Аналог на Эльме лишним не будет :)
источник

к

кана in Elm Lang сообщество разработчиков
может быть это и есть тот путь для понимания, зачем же тайпклассы
источник

AP

Aleksei (astynax) Pirogov in Elm Lang сообщество разработчиков
Тайпклассы, это ad hoc полиморфизм. Они не для "понимания"
источник