What is Monad in kotlin arrow functional programming?

Viewed 751
1 Answers

Here's a good explanation from the documentation:

In Arrow terms, a Monad is an interface with two operations: a constructor just, and flatMap

Arrow provides both documentation for Monad and a longer Monad Explanation.

In a short and very non-academic way, though, Monad can be viewed as a design pattern to safely chain calls. If you used Stream API in Java, you've used monads. If you've used promises in JavaScript, you've used monads.

Related