On Tue, May 06, 2008 at 08:47:47PM -0500, John M. Dlugosz wrote:
> Larry Wall larry-at-wall.org |Perl 6| wrote:
>> On Tue, May 06, 2008 at 08:20:40PM +0200, TSa wrote:
>>   
>>> HaloO,
>>>
>>> John M. Dlugosz wrote:
>>>     
>>>> In C++, which must be resolved at compile time, the overloading 
>>>> resolution mechanism demands that =every= parameter be at least as good 
>>>> of a match, and one strictly better match.  So the implementation never 
>>>> guesses if worse-left/better-right is a better fit than 
>>>> better-left/worse-right.  However, you are assured that everything is 
>>>> brought to your attention at program build time, before run time, so 
>>>> complaining is not as serious as a run-time error where you might prefer 
>>>> DWIM.
>>>>       
>>> Perl 6 is the same, just at runtime with actual types of actual objects.
>>> That's it.
>>>     
>>
>> Indeed, Perl 6 threw out Manhattan distance a couple years ago.  Do we
>> have to spec everything that Perl 6 ever was but isn't now?  :)
>>
>> Larry
>>
>>   
> No, just point me to what it says now.  Or the scraps so I can collect them 
> together and "say" it during my productive period.

See S12, Multisubs and Multimethods, around where it says:

    A candidate is considered narrower than another candidate if at least
    one of its parameters is narrower and all the rest of its parameters
    are either narrower or tied.  This defines the partial ordering of
    all the candidates.

Larry

Reply via email to