lapack (hackage): This is a high-level interface to LAPACK. It provides solvers for simultaneous linear equations, linear least-squares problems, eigenvalue and singular value problems for matrices with certain kinds of structures.  Features:  Based on comfort-array: Allows to precisely express one-column or one-row matrices, as well as dense, square, triangular, banded, symmetric, Hermitian, banded Hermitian, blocked and LU or QR decomposed matrices.  Support all data types that are supported by LAPACK, i.e. Float, Double, Complex Float, Complex Double  No need for c2hs, hsc, Template Haskell or C helper functions  Dependency only on BLAS and LAPACK, no GSL  Works with matrices and vectors with zero dimensions. This one is tricky and still leads to surprises since different LAPACK implementations consider different situations as corner cases.  No automatic (and dangerous) implicit expansion of singleton vectors or matrices. Instead there are special operators for scaling of vectors and matrices.  Separate formatting operator (##): Works better for tuples of matrices and vectors than show. Show is used for code one-liners that can be copied back into Haskell modules. Support for nice formatting in HyperHaskell.  See also: hmatrix.
Keywords: bsd3|library|math