sub File::Spec::dirname { my $self = shift; return $self->catpath( ( $self->splitpath(shift) )[ 0, 1 ] ); } sub File::Spec::basename { my $self = shift; return $self->catpath( ( $self->splitpath(shift) )[ -1 ] ); } sub File::Spec::realpath { my $self = shift; require Cwd; return $self->canonpath( Cwd::realpath(@_) ); }