# FSharpPlus Monad A [[Monad]] in FSharpPlus needs to have: - Return: `static member Return (x : 'T) : 'Monad<'T>` (operator `result`) - Bind: `static member (>>=) (x : Monad<'T>, f : 'T->Monad<'U>) : Monad<'U>` (operator `bind`). The first parameter of `>>=` is the instance of the monad and the second the function. Implemented by: - [[FSharpPlus Free|Free]]