Witchcraft v0.3.0 API Reference

Modules

Function helpers, derivatives and operators for Witchcraft.Applicative

Check samples of your applicative functor to confirm that your data adheres to the applicative properties. All members of your datatype should adhere to these rules, plus implement Witchcraft.Functor

Functions that come directly from lift

Check samples of your functor to confirm that your data adheres to the functor properties. All members of your datatype should adhere to these rules. They are placed here as a quick way to spotcheck some of your values

A simple wrapper for some data. Only used in this library for examples

Check samples of your monoid to confirm that your data adheres to the monoidal properties. All members of your datatype should adhere to these rules. They are placed here as a quick way to spotcheck some of your values

Protocols

Applicative functors provide a method of applying a function contained in a data structure to a value of the same type. This allows you to apply and compose functions to values while avoiding repeated manual wrapping and unwrapping of those values

Functors provide a way to apply a function to value(s) a datatype (lists, trees, maybes, etc)

Monoids are a set of elements, and a binary combining operation (op) that returns another member of the set