> Another school of thought would be that "Dog" alone would be
> considered ambiguious and so we would just alias far enough to be
> clear, like this:
>
>    Dog       => Ambiguity Error!
>    Dog-1.2.1 => Dog-1.2.1-cpan:JRANDOM
>    Dog-0.0.2 => Dog-0.0.2-cpan:LWALL
>
> Of course, this means that if I also load "Dog-1.2.1-cpan:LWALL" that
> the table looks like this:
>
>    Dog       => Ambiguity Error!
>    Dog-1.2.1 => Ambiguity Error!
>    Dog-0.0.2 => Dog-0.0.2-cpan:LWALL
>
> And the user is now forced to add the cpan id to get Dog-1.2.1. I am
> not sure how strict @Larry wants this to be.

NB: Dog-*-cpan:LWALL and Dog-*-cpan:JRANDOM, as well as *-*-cpan:LWALL
are also needed for entry into the mix because if there's only one
module loaded that is signed by cpan:LWALL, that should be sufficient
disambiguation for the parser. (How maintainable that is, I'll leave
as an exercise for the reader.)

Rob

Reply via email to