I tend to favour explicit numbers of arguments in functions: I rarely find auto-currying a useful default. Explicit arity gives good errors!
I've realised that auto-currying allows you to handle generic functions though. `a -> b` can be any function!