Do<E, A>  function 
 
Implementation
Either<E, A> Do<E, A>(DoFunction<E, A> f) {
  try {
    return right(f(_doAdapter<E>()));
  } on Left catch (e) {
    return left(e.value);
  }
}Either<E, A> Do<E, A>(DoFunction<E, A> f) {
  try {
    return right(f(_doAdapter<E>()));
  } on Left catch (e) {
    return left(e.value);
  }
}