I agree. The type inference is a beautiful thing. I had started a project in Scala and I'm finding it hard to stay interested when Haskell is so much more interesting to me. But Scala is a LOT more practical for my project. :(
i dunno i've seen type inference create horrible to debug situations - although mainly where it has been shoehorned into to C++11 and used with templates and auto to create code that fails silently doing nothing when a parameter has the wrong type
C++ "type inference" has nothing to do with actual type inference. Types in functional programming languages have a proper academic mathematical foundation, specifically in formal logic. This is in sharp contrast to C++, where it was added as a convenience to avoid specifying certain template parameters. And with so many C++ "features", this one adds yet more ambiguity to the language.
I just meant it is more interesting to me right now. Scala is really interesting too, but I've been working with it longer. So its just relative to my current interests. I like being challenged to take a purely functional approach to problem solving.
One thing I like better about Haskell which is not time-bound to my own journey is that the language is so much cleaner and more concise. In functional programming it is idiomatic to compose lots of small functions that may be only a single (short) expression each. In Scala this may mean 20-40% of the characters in a line are simply type specifications for your function arguments. I find that oppressive.