People have ported this library to other languages as well. For Haskell, you can use `eigen` package ($ cabal install eigen ). The eigen package provides bare-bone binding to eigen functions.
Another competing library is `hmatrix` in Haskell ecosystem. Hmatrix has many higher order functions which are extremely helpful. Both libraries are pretty good.
I wrote a small library on top of eigen https://hackage.haskell.org/package/haskell-eigen-util-0.1.0.0 . The plan to have hmatrix like functionality in future. I'll keep on adding functions as per my requirement, but if you plan to use/modify it, send a pull request (details are on hackage page).