scalaz/scalaz

Scalaz 8 package organization

Open

#1,540 创建于 2017年11月28日

在 GitHub 查看
 (22 评论) (0 反应) (0 负责人)Scala (4,671 star) (698 fork)batch import
good first issuescalaz8

描述

Proposed and preliminary package organization structure for Scalaz 8:

  • scalaz.algebra — Abstract algebra, including semigroup, magma, field, rng, etc.
  • scalaz.ct — Category theory, including functor, monad, & related.
  • scalaz.data — General-purpose data structures, such as These, etc.
  • scalaz.collections — General-purpose collections like heaps, trees, lists, maps, etc. This will probably be pulled out into a separate repository, with Scalaz 8 depending on it.
  • scalaz.ioz — IO monad, & things related to it, such as MVar, STM. Deprecated, this will be pulled out into a separate repo.
  • scalaz.effects — Type classes for effects, like MonadState, FunctorTell, etc.
  • scalaz.mutable — ST monad & related machinery for high-performance mutability.
  • scalaz.testz — Scalaprops & tests for everything. Deprecated, this has now become testz, although instances can and should still be defined in Scalaz 8.
  • scalaz.types — Leibniz, Liskov, IsCovariant, & friends.

A few things will have to be moved around.

贡献者指南