For when you really need a less purely functional language, 
when you want your data to mutate, and your code not to.
When the possibility any function might be a macro is too frightening, but the possibility any function might mangle its inputs is fine.<p>Embrace the madness of R, my friend.