Generally speaking you should stick with a more functional style. A few exceptions are:
- Public Libraries (for performance reasons)
- Performance Critical sections of your app
- Apis consumed by other languages (functional apis may be more difficult for non-functional languages to consume)
Even for these exceptions, frequently there is a functional means of doing what you're trying to do with a functional style (api definitions excluded), so make sure you explore your functional options before turning to a more imperative or OO style.