- Make Ruby 1.9.3 compatible
- Add
Result#+
- Alias pipe with << for left association
- Make the None convenience wrapper always return instance
- Add global convenience typdef for Success, Failure
- Add
Option#value_to_a
- Add
Option#+
- Make
None
a real monad (little impact on the real world) - Add
Either
- Add
Option#value_or
None#value
is now private
- Fix backwards compatibility with Ruby < 2.0.0
- Add Option
- Nest
Success
andFailure
underResult
** breaking changes **
- Remove
Either#<<
- Rename
Either
toResult
- Add
Result#pipe
akaResult#**
- Add
Result#map
andResult#map_err
** breaking changes **
- Remove
Either.attempt_all
in favor ofEither#>>
andEither#>=
This greatly reduces the complexity and the code necessary.
- Introduce
Either#>>
andEither#>=