TypeClasses.jl

Monoid, Functor, Applicative, Monad and more
Author JuliaFunctional
Popularity
13 Stars
Updated Last
10 Months Ago
Started In
January 2020

TypeClasses.jl

Stable Dev Build Status Coverage

TypeClasses defines general programmatic abstractions taken from Scala cats and Haskell TypeClasses.

The following interfaces are defined:

TypeClass Methods Description
Functor Base.map The basic definition of a container or computational context.
Applicative Functor &TypeClasses.ap Computational context with support for parallel execution.
Monad Applicative &TypeClasses.flatmap Computational context with support for sequential, nested execution.
Semigroup TypeClasses.combine, alias The notion of something which can be combined with other things of its kind.
Monoid Semigroup &TypeClasses.neutral A semigroup with a neutral element is called a Monoid, an often used category.
Alternative TypeClasses.neutral & TypeClasses.orelse, alias Slightly different than Monoid, theorelse semantic does not merge two values, but just takes one of the two.

Used By Packages