Changelog¶
0.3.0¶
Added¶
Add
Bind
typeclass.Add
Traversable
typeclass.Add
Dictionary
type.Add
Apply
typeclass. In the typeclass hierarchy, it’s betweenFunctor
andApplicative
.Add
+
operator forSemigroup
(andMonoid
) instances.Add
<<
operator forApply
(andApplicative
) instances.Add
apply_first
method toApply
.Add
lift4
andlift5
functions.Add
flap
(andflip
) functions.Add
UncurriedFunction
,UncurriedFunctionMonoid
anduncurried
in order to support functions with arbitrary function signatures.
Changed¶
Rename
sequence
toapply_second
.Rename
liftA2
tolift2
.Rename
liftA3
tolift3
.Modify sampling for property tests. In particular, type constructors are sampled first, then those are used to sample concrete types. This way, other type constructor parameters are kept constant while the one of current interest can be modified.
Fixed¶
Fix
liftA2
andliftA3
.Complete
Hashable
typeclass.
0.2.0¶
Added¶
Add
Eq
typeclass.Add
LinkedList
type.
Changed¶
Mask out some built-in class methods such as
__eq__
and__hash__
. Python doesn’t allow deleting these methods so we need to do some black magic to hide them as if they didn’t exist.Make
Function
objects curried and so that they only accept mandatory positional arguments.
Fixed¶
Fix the composition operator
**
forFunction
objects.
Removed¶
Remove
CommutativeMonoid
.Remove
curry
function.
0.1.3¶
Fixed¶
Fix PyPI releasing on GitHub
0.1.2¶
Changed¶
Improve operator docstrings.
0.1.1¶
Changed¶
Change bind operator to
%
.
0.1.0¶
Added¶
Add typeclasses
Functor
,Applicative
,Monad
,Semigroup
,Monoid
,Commutative
,CommutativeMonoid
,Foldable
,Contravariant
,Profunctor
,Cartesian
,Cocartesian
.Add monads
Identity
,Maybe
,Either
,List
,Function
.Add transformers
Compose
,MaybeT
,IdentityT
.Add simple monoids
Sum
,And
,Or
,String
,Endo
Add profunctor optics
adapter
,lens
,prism
.Test typeclass laws with property-based testing.
Add
curry
,function
,singleton
,const
,compose
,identity
utility functions.