Available Monads in MonetJS
developMonetJS provides several specialized monads for different functional programming patterns:
- Maybe: For handling optional values (presence/absence).
- Either: For handling computations that can result in one of two values (typically a success value or an error value).
- Validation: For accumulating errors during validation processes.
- List: For working with collections of items.
- Non Empty List (NEL): A list that is guaranteed to contain at least one element.
- IO: For managing side effects.
- Reader: For dependency injection and accessing shared environment/context.
- Free: For building and interpreting domain-specific languages (DSLs).