Every time you call a function that can raise an exception and don't catch it on the spot, you create opportunities for surprise bugs caused by functions that terminated abruptly, leaving data in an inconsistent state, or other code paths that you didn't think about.
Well, when you write your own code in a language like Perl or Java, you can always try to minimize and localize side-effects. That is, you can try to make most of your functions pure, reduce the need for looping by using higher order functions, doing I/O at the top levels, not willy-nilly in the bowels, etc. When it comes to libraries though, you're at the mercy of someone else. Them's the breaks.