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.