haskell if you want an "experience" (mindblowing), ocaml if you also want to get stuff done but less of an experience, scala if you want java interop
Haskell can make you cry if it catches you off guard.