val map : f:( 'a -> 'b ) -> 'a option -> 'b optionval bind : f:( 'a -> 'b option ) -> 'a option -> 'b optionval iter : f:( 'a -> unit ) -> 'a option -> unitval filter : f:( 'a -> bool ) -> 'a option -> 'a optionval compare : ( 'a -> 'b -> int ) -> 'a option -> 'b option -> intval equal : ( 'a -> 'b -> bool ) -> 'a option -> 'b option -> boolval is_none : 'a option -> boolval is_some : 'a option -> boolval value : default:'a -> 'a option -> 'a