The goal of this Google Summer of Code project (link) was to implement Chebyshev polynomial approximations in Haskell. This would allow the speed and precision of numerics when dealing with complex, non-polynomial functions.

Accelerate vs Vanilla Haskell

Accelerate allows for parallel array computations on multiple cores of one CPU. This can greatly reduce the time required to generate Chebyshev representations. This post explores the change in algorithms that are required when using accelerate, in contrast to using lists in Haskell.

Google Summer of Code: Chebyshev approximations in Haskell

Chebyshev approximations are a way of representing any bound, continuous function, with a polynomial. Having a polynomial representation means that further function manipulations, such as derivation, integration, and root-finding, becomes relatively trivial computations.