After some CB discussion with
ELISHEVA and
tye we agreed that a big part of the problem is the dual function of
require Bareword. It first takes the module name and turns it into a path, then loads the module. The first step of can't be executed separately.
I brought the issue to #perl6, and TimToady broke down module loading into several steps.
We do try to avoid Perl 5 design flaws in Perl 6 ;-)