Skip to content

Using functional programming to solve third-order equations and represent arbitrary algebraic polynomials and n-dimensional vector spaces.

License

Notifications You must be signed in to change notification settings

MichaelBalas/FunctionalMath

Repository files navigation

Functional Math

This repository contains various mini-projects that solve common mathematical problems (i.e. solving cubic equations, representing n-dimensional vector space, defining arbitrary algebraic data types of polynomials with I/O and list manipulation, and approximating integrals) using a functional programming language. Here, programs are declarative: they are sequences of side-effect free function definitions. Results are produced by evaluating expressions built from functions, which are defined as first-class values and used as rules. State change and Data mutation are avoided as much as possible.

Haskell is used because it's a well-established functional programming language. It's highly accessible and easy to use. It's purely functional, has a sophisticated static type system, and an interpreter (GHCi).

Author

Michael Balas

License

GNU General Public License

About

Using functional programming to solve third-order equations and represent arbitrary algebraic polynomials and n-dimensional vector spaces.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published