Run-Time Overloading

Since use statements are executed at compile time, the only way to change overloading during run time is:

eval " use overload '+' => \&my_add ";


You can also say:

eval " no overload '+', '--', '<=" ";


although the use of these constructs during run time is questionable.