my $obj = new My::Custom::Object; use bigint; my $mult = 2**100 * $obj; #### package Math::BigInt; use overload '*' => sub { if (ref $_[1] eq 'My::Custom::Object') { $_[1]->MultiplyByInt($_[0]); } else { $_[0]->bmult($_[1]); } }