1
函數A => A
是幺半羣,identity
爲empty
,組成爲combine
。不幸的是我沒有在cats
庫中找到它。庫是否爲這些函數提供了一個monoid實例?A => A在貓中的幺半羣實例
A => M[A]
怎麼樣,其中M
是monad還是applicative?
函數A => A
是幺半羣,identity
爲empty
,組成爲combine
。不幸的是我沒有在cats
庫中找到它。庫是否爲這些函數提供了一個monoid實例?A => A在貓中的幺半羣實例
A => M[A]
怎麼樣,其中M
是monad還是applicative?
貓在instances/function.scala中的實例爲A => A
。
A => M[A]
一個單子M
接縫,以形成形成具有a => M.pure(a)
一個Monoid作爲empty
以下combine
OP:
def compose(f1 = A => M[A], f2 = A => M[A]): A => M[A] =
a => f1(a).flatMap { e => f2(e) }
這並不會apeart到庫中來實現。
幺半羣法則的證明留給讀者作爲exersise。
非常感謝。是'X => A [X]',其中'A'是適用的,是一個幺半羣? – Michael
monad只是內生工程的範疇中的一個monoid,有什麼問題? –
@Michael你可以在沒有'flatMap'的情況下寫一個'combine'嗎? – OlivierBlanvillain