Kind/book/Monad.new.kind2
2024-03-12 18:01:12 -03:00

9 lines
211 B
Plaintext

Monad.new
: ∀(M: ∀(T: *) *)
∀(bind: ∀(A: *) ∀(B: *) ∀(a: (M A)) ∀(b: ∀(a: A) (M B)) (M B))
∀(pure: ∀(A: *) ∀(a: A) (M A))
(Monad M)
= λM λbind λpure
~λP λnew
(new bind pure)