For readers with a background in functional languages like Haskell or OCaml this table translates standard terminology to s C vocabulary Functional Term libfn Equivalent code fmap type InlinedCode text type SimpleText code map type InlinedCode code transform type InlinedCode text type SimpleText code transform_error type InlinedCode code bind type InlinedCode text type SimpleText code >> type InlinedCode code and_then type InlinedCode code pure type InlinedCode text type SimpleText code return type InlinedCode code just<T> v type InlinedCode text type SimpleText code expected<T copack<>> v type InlinedCode text a carrier constructor type SimpleText text Lift inject type SimpleText code fn as_pack type InlinedCode text type SimpleText code fn as_copack type InlinedCode text Kleisli arrow type SimpleText text The callable passed to type SimpleText code and_then type InlinedCode text Product type type SimpleText code pack type InlinedCode text type SimpleText code std tuple type InlinedCode text Coproduct Sum type SimpleText code copack type InlinedCode text the sum itself type SimpleText code choice type InlinedCode text the never failing carrier over a sum type SimpleText text Subeffecting type SimpleText text Widening an error grade subset inclusion type SimpleText libfn