|Think about Loose Coupling|
In terms of complexity to use, all of the proposed solutions, including yours, are about equal...
I disagree with that. I think:
is definitely easier to type and to the eye than:
especially when it comes to parametrized uses. These would all work with my source filter:
Package::Alias (and Abigail's approach) does not support this.
...conceptual difficulty for a Perl programmer to figure out how they work under the hood...
I also disagree here. If you know about source filters, you will see that the filter is very simple. Creating the source filter involves some strange idioms, I agree, but I can't be blamed for that. And adding some more comments should take care of instructing any other Perl programmers who take a look under the hood.
Traditional Perl modules have much lower odds of conflict.
I agree. But I see the source filter merely as a means of achieving the end now, as a prototyping tool, rather than as the way to do such a thing in the long run.
And so far nobody has commented on the API. So that at least feels right to the people who looked at this so far. I don't think there is a Perl 6 Apocalypse about this, is there?