Algebraic datatypes, which naturally begets Option and Either, predate OCaml.
If you want to go pedatic we can start discussing the type theory papers they appear on.
I could implement map/fmap/bind/lift/unlift/return/...
But I choosed and_then/or_else/unwrap/...