Introduction
Scalaz 6.0 adds new data structures and type classes. The overall structure is largely the same as in version 5.0.
Migration 6.0.1 to 6.0.2
See the Release notes
Migration 5.x to 6.0
You will need to recompile your code against this release.
The Monad instance for Validation has been moved out of the implicit scope, to avoid accidental fail-fast semantics when error accumulation is desired. Details
scalaz.Cofunctor was renamed to scalaz.Contravariant.
If you find further issues, please email the mailing list, and we can help.
Obtaining
You can download the full of the distribution from Scala Tools repository scalaz-full_2.9.1-6.0.4.jar , or you can obtain the individual modules with Maven or SBT from the Scala Tools repository. Note that the Group ID is now "org.scalaz".
Documentation
API Documentation and Examples are available online:
What's New
- Iteratee implementation
- Lenses and API -- putting coalgebra in yo costate comonad
- Type-system effect-tracking with IO and ST type constructors (scalaz.effects)
- List and Stream monad transformers implemented using step
- Fix issue 14 https://github.com/scalaz/scalaz/issues/14
- A lazy option data type
- Logger -- a specialised WriterT
- OptionT monad transformer
- More APIs for WriterT monad transformer
- Removed a few of the unicode aliases
- Resource handling API
- A lifted getOrElse called fromMaybeM that is lazy in its second argument Issue 24 http://code.google.com/p/scalaz/issues/detail?id=24
- Removed DList because it is not stack-friendly. Scalaz 7 has surprises in store here!
- General composition of functors and applicative functors
- Semigroup instances for First and Last Option value
- List functions such as scanr and unzip
- Stack friendly Traversable implementation of Traverse
- EphemeralStream for a garbage-collector-friendly lazy cons list
- Generalized category, Leibniz and Liskov
- Liskov substitution (a better <:<) with category instance to compose
- Leibniz equality (a better =:=) with category instance to compose
- Groupoids
- Cofree and generalized recursion
- Fixed stack overflow in Endo(morphism) semigroup
- List zipper
- Equal, Show, and Order instances for scala.Symbol
- Multi-way tree and zipper
- Concatenation list (rope)
- Use of Type Lambdas rather than PartialApplyNofM traits
- Name / Need / Value: data types to represent call-by-name, call-by-need, and strict evaluation
- Heap: An efficient, asymptotically optimal, implementation of priority queues extended with support for efficient size
Fixes in Scalaz 6.0.1
See the commit log for the bug fixes between Scalaz 6.0 and 6.0.1.
Fixes in Scalaz 6.0.2
Release Notes
Diff
Fixes in Scalaz 6.0.3
Release Notes
Diff
Fixes in Scalaz 6.0.4
Release Notes
Diff