I don't have an opinion about erlang or scala, but I agree with the poster that it is important to do something practical with a language. How will you learn the concepts that a language tries to teach you without actually building something non-trivial in it?
Oh you can certainly build non-trivial things in the language. It's just you may not be able to use it for a work project (for different reasons). This is what I meant by practical: software that you build at work and that operations will deploy or sales will sell.
There's tons of practical applications built in both Haskell and Erlang: erlang has rabbit mq (I have some criticisms of it, but they're not related to the language it's built in), Haskell has XMonad (the window manager I use on a daily basis). Both are very practical.