-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Instances of the Algebra.* classes for functions -- -- 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. @package function-instances-algebra @version 0.1 module Data.Function.Instances.Algebra.Ring instance C a => C (k -> a) module Data.Function.Instances.Algebra.Monoid instance C a => C (k -> a) module Data.Function.Instances.Algebra.Lattice instance C a => C (k -> a) module Data.Function.Instances.Algebra.Field instance C a => C (k -> a) -- | Note: differentiate f is not the derivative of -- f. Rather, it is a function that takes one argument -- x and returns the derivative of f x. In other words: -- --
-- differentiate f = \x -> differentiate (f x) --module Data.Function.Instances.Algebra.Differential instance C a => C (k -> a) module Data.Function.Instances.Algebra.Algebraic instance C a => C (k -> a) module Data.Function.Instances.Algebra.Transcendental instance C a => C (k -> a) module Data.Function.Instances.Algebra.Absolute instance C a => C (k -> a) -- | Import all Algebra.* instances. module Data.Function.Instances.Algebra