Description
Instances of the Algebra.* classes for functions.
Description
This package provides instances for functions (k -> a)
of the classes Absolute, Algebraic, Differential, Field, Lattice, Monoid, Ring and Transcendental from the numeric-prelude package. An instance for Additive already comes with the original package.
If a
has an instance for one of the classes, then (k -> a)
has too. The instances do what you would expect. Values become constant functions:
zero = const zero
Unary functions are composed:
sin f = sin . f
Binary functions fan out the input and combine both results:
f + g = \x -> f x + g x
You can either import them separately or import Data.Function.Instances.Algebra
to get them all at once.