if( ref( $obj ) eq $type ) { ... ## or if( $obj =~ m[=$type$] ) { ... #### if( ref( $exception ) eq $type ) or grep{ ref( $exception ) eq $_ } @{ $type::ISA } ) { ... ## or if( $exception =~ m[=$type$] or grep{ $exception =~ m[=$_] } @{ $type::ISA } ) { ... #### use Exception::Class ( 'MyException', 'AnotherException' => { isa => 'MyException' },