ref EXPRThe ref operator returns a true value if EXPR is a reference,
the null string otherwise.  The value returned depends on the type of thing the
reference is a reference to.  Built-in types include:
REF SCALAR ARRAY HASH CODE GLOB
If the referenced object has been blessed into a package, then that package name is returned instead. You can think of ref as a "typeof" operator.
if (ref($r) eq "HASH") {
    print "r is a reference to a hash.\n";
} 
elsif (ref($r) eq "Hump") {
    print "r is a reference to a Hump object.\n";
} 
elsif (not ref $r) {
    print "r is not a reference at all.\n";
}See Chapter 4 for more details.