use ModuleA; function_from_ModuleA; # This works.... function_from_ModuleA(); # and so does this... # Ah, but here's the rub... eval "use $desired_module"; ... function_from_desired_module; # nope. bareword. function_from_desired_module(); # works!