----------------------------------------------------------------------------- -- | -- Copyright : (C) 2015 Dimitri Sabadie -- License : BSD3 -- -- Maintainer : Dimitri Sabadie -- Stability : experimental -- Portability : portable -- -- This package works around two primary types: -- -- - 'Key' -- - 'Spline' -- -- A @'Spline' a s@ represents a curve in which 'a' is very likely to be -- 'Additive' (see ) and -- 's' is the sampling type. -- -- A 'Key' is used to hold data in a 'Spline'. It adds interpolation mode to -- data for __each__ 'Key' used to build the 'Spline'. -- -- Through the library, you’ll see types like: -- -- @ ('Additive' a) => a s @ -- -- That is due to the fact some functions work on 'a' as a polymorphic -- first-class value. That enables more flexibility in the implementation and -- the interface. Thus, in most cases, you can use any type of your choice as -- long as it’s an additive one. ---------------------------------------------------------------------------- module Data.Spline ( -- * Re-exports module Data.Spline.Curve ) where import Data.Spline.Curve