In Perl, UNIVERSAL is the superclass of all classes (i.e. any class X is-a UNIVERSAL, even if @X::ISA makes no mention of UNIVERSAL). As such, Perl searches UNIVERSAL for any methods it cannot find for any object.
UNIVERSAL contains the methods isa, can and VERSION. All 3 may be called as object methods or as class methods.
Not everything in Perl is an object! Saying
my $x = 17; # NOT AN OBJECT
print "Yes\n" if $x->isa('X');
is an
error. Instead, you must cheat and say UNIVERSAL::isa($x,'X').
There is no need to use UNIVERSAL before using (sorry) these methods; they are built in. However, use UNIVERSAL does no harm, either.