The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Error::Tiny

    use Error::Tiny;

    try {
        dangerous();
    }
    catch MyCustomException then {
        my $e = shift;

        ...everything whose parent is MyCustomException...
    }
    catch {
        my $e = shift;

        ...everything else goes here...
    };

Why not Try::Tiny

    try {
        dangerous();
    }
    catch {
        my $e = $_;

        if (blessed($e) && $e->isa('MyCustomException')) {
        }
        else {
        }
    };