I’ve repeatedly tried to learn Haskell over the decades but I tend to hit a frustration point and give up each time. It’s definitely worth learning. You’ll pick up new techniques that you can apply elsewhere or that will help you think about problems in a different way. A few years back I was playing around with Frege which is a dialect of Haskell on the JVM but it’s really just one person’s pet project so it’s neither widely used nor particularly battle-tested. Maybe Eta will fare better?
Rust was my “new language every year” last year (I think?) and I was very impressed with it. At first, appeasing the “borrower” can be an exercise in frustration but the analysis it performs is amazing. I haven’t written anything useful in Rust, just a few toy programs, but if I was doing systems-level programming, then it would be my first choice. I think it’s really well designed (caveat: I spent eight years on the ANSI C++ Committee so my view of language design may not match yours! ). In particular, Rust was what I had hoped Go would be when I tackled that as my “new language every year” a few years back!
If you’re looking for something interesting on the front end to learn, I’d highly recommend Elm. Opinionated, statically typed, architecture-driven, and it manages to avoid the M-word (monads) as part of its overall culture, so it is much more beginner-friendly (or at least non-FP friendly) than many other FP languages.