While grown-up languages like Java has mechanisms to let you throw Exception objects, and to catch them in different places and do interesting things with them, most Perl code just dies with a error message of some sort (If you’re lucky, it’s even helpful, and reporting the mistake you did inside your own code, rather than going belly up inside the module itself. This is usually good enough for m