See the current Perl documentation for ref.
Here is our local, out-dated (pre-5.6) version:

ref - find out the type of thing being referenced

ref EXPR
ref

Returns a
TRUE value if
EXPR is a reference,
FALSE otherwise. If
EXPR is not specified,
$_ will be used. The value returned depends on the type of thing the reference
is a reference to. Builtin 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";
}
if (!ref($r)) {
print "r is not a reference at all.\n";
}
See also the perlref manpage.