Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
A monad is an abstract data type constructor that used to represent computations in functional programming. Monads allow application developers to chain actions together to build a pipeline. The monad assigns additional processing rules to each action in the program.
Monadic functions are usually created by a programmer to define a data-processing pipeline, but novice programmers tend to find them very difficult to understand.
A monad is created by defining two operations ("bind" and "return") and a type constructor ("M"). The "return" operation takes a value from a plain type and puts it into a type "M" monadic container. Then, the "bind" operation does the opposite byt extracting the original value from the container and passing it to the associated next function in the pipeline.