anchor.diff:  /// <typeparam name="Error"></typeparam>
   type StatefulChoiceFunc<'State, 'T, 'Error> =
       'State -> Choice<'T, 'Error> * 'State
  +
  +/// <summary>
  +/// </summary>
  +/// <typeparam name="State"></typeparam>
  +/// <typeparam name="T"></typeparam>
  +type AsyncStateFunc<'State, 'T> =
  +    'State -> Async<'T * 'State>
  +
  +/// <summary>
  +/// </summary>
  +/// <typeparam name="State"></typeparam>
  +/// <typeparam name="T"></typeparam>
  +/// <typeparam name="Error"></typeparam>
  +type AsyncProtectedStateFunc<'State, 'T, 'Error> =
  +    'State -> Async<Choice<'T * 'State, 'Error>>
   
   
   (*** Workflow Builders ***)
  
positive.code: 
      //
      [<CompiledName("GetState")>]
      let inline getState (env : 'Env) (state : 'State) =
          state, state
  
      //
  
negative.code:     // unit -> M<'T>
      member this.Zero ()
          : ReaderProtectedStateFunc<'Env, 'State, unit, 'Error> =
          fun _ state ->
          Choice1Of2 ((), state)
  
      // (unit -> M<'T>) -> M<'T>
  