Haskell is a pure functional programming language that is conceptually very expressive. Haskell code is sometimes called “runnable specification”. It is a mature language with lots of excellent documentation, libraries and tools support, making it an enterprise-grade solution.
Haskell’s strong type system is considered the best one used in enterprise. It has a great expressive power, while not limiting polymorphism.
A good number of thematically-sorted resources are available on our wiki page.
At our faculty, we teach subject Applied Functional Programming (MI-AFP). All materials are available on github.com/MI-AFP with open CC license.