If found working in a ML language like Haskell or F# puts a really tight straight-jacket on code style, and is wonderful at forcing you to adopt a new paradigm.
When you go back to coding in other languages, you approach the same problems in different ways because you were forced to solve them in a strongly typed functional manner.