I've played with Scala, and I think it's generally a good language, but for FP on the JVM, I prefer Clojure. It's pure FP, and a Lisp, so it's a bigger jump than Scala, which lets you mix and match OO & FP, but it's a much simpler language, and I tend to really like simple languages. (For instance, check out this section from the Io docs:
http://iolanguage.org/scm/io/docs/IoGuide.html#Objects - it's OO and prototype-based, but they get a ton of language out of a very few core features.) Scala felt like too much language for me, personally, but it's certainly worth a look.