code: public final static <R,T> R foldRightMapToType(final Stream<T> stream, final Reducer<R,T> reducer) {
          return reducer.foldMap(Streams.reverse(stream));
      }
docs: Attempt to transform this Monad to the same type as the supplied Monoid (using mapToType on the monoid interface)
  Then use Monoid to reduce values
  
  @param reducer Monoid to reduce values
  @return Reduce result