anchor.diff:  namespace Exira
   
  +/// F# Helpers to facilitate with the Railway Oriented Programming approach.
   module ErrorHandling =
  +    /// Two-track result type.
       type Result<'TSuccess, 'TFailure> =
           | Success of 'TSuccess
           | Failure of 'TFailure
  
positive.code:             let errors' = List.map f errors
              fail errors'
  
      /// given a function wrapped in a result
      /// and a value wrapped in a result
      /// apply the function to the value only if both are Success
      let apply f result =
          match f, result with
          | Failure a', Success b' -> fail a'
  
negative.code:     /// Infix version of apply.
      let (<*>) = apply
  
      /// Infix version of lift.
      let (<!>) = lift
  
      let private constructionSuccess value =
  