Re: Can foo("123") dispatch to foo(Int) (was: Mutil Method Questions)

2006-06-23 Thread Jonathan Scott Duff
On Fri, Jun 23, 2006 at 09:11:44PM +0300, Markus Laire wrote: > And what about other types? > e.g. if String can't ever be "best candidate" for Int, then does that > mean that neither can Int ever be "best candidate" for Num, because > they are different types? Well, I think Num and Int *aren't* d

Can foo("123") dispatch to foo(Int) (was: Mutil Method Questions)

2006-06-23 Thread Markus Laire
I'm sending this also to perl6-language, in case someone there knows an answer to this. On 6/23/06, Jonathan Scott Duff <[EMAIL PROTECTED]> wrote: I don't think so. I think the "best candidate" prose is about choosing from types that have been specified, not autoconverting between types such tha

Re: Mutil Method Questions

2006-06-23 Thread Thomas Wittek
Steffen Schwigon schrieb: > At least the many keywords seem to be necessary to map the complexity > of different paradigms possible in Perl6. Multimethods are not just > overloading as in C++. Second, the different keywords declare > different behaviour you can choose. Just read S06, it's explained

Re: Mutil Method Questions

2006-06-23 Thread Jonathan Scott Duff
On Fri, Jun 23, 2006 at 06:55:28PM +0300, Markus Laire wrote: > On 6/23/06, Jonathan Scott Duff <[EMAIL PROTECTED]> wrote: > >An alternate interpretation would be that the last one is actually a > >compile- > >time error because none of the sigs match (Int,Int) and for a call to > >work with 2 Int

Re: Mutil Method Questions

2006-06-23 Thread Chris Yocum
Hi All, I would like to thank everyone for their illuminating examples and prose. This has cleared up understanding for me. Thanks again, Chris On 6/23/06, Markus Laire <[EMAIL PROTECTED]> wrote: On 6/23/06, Jonathan Scott Duff <[EMAIL PROTECTED]> wrote: > An alternate interpretation would

Re: Mutil Method Questions

2006-06-23 Thread Markus Laire
On 6/23/06, Jonathan Scott Duff <[EMAIL PROTECTED]> wrote: An alternate interpretation would be that the last one is actually a compile- time error because none of the sigs match (Int,Int) and for a call to work with 2 Int parameters, you'd need to be explicit: talk(~123,3); But I'm not sure wh

Re: Mutil Method Questions

2006-06-23 Thread Jonathan Scott Duff
On Fri, Jun 23, 2006 at 06:18:51PM +0300, Markus Laire wrote: > multi sub talk (String $msg1, String $msg2) { say "$msg1 $msg2" } > multi sub talk (String $msg, Int $times) { say $msg x $times; } > multi sub talk (String $msg, Num $times) { say "Please use an integer"; } > multi sub talk (String $m

Re: Mutil Method Questions

2006-06-23 Thread Markus Laire
On 6/23/06, Steffen Schwigon <[EMAIL PROTECTED]> wrote: Steffen Schwigon <[EMAIL PROTECTED]> writes: > multi sub talk () { say 'Loose Talk Is Noose Talk.'; } > multi sub talk (String $msg) { say $msg; } > multi sub talk (String $msg, Int $times) { say $msg x $times; } BTW, because we are j

Re: Mutil Method Questions

2006-06-23 Thread Daniel Hulme
> Multimethods are not just overloading as in C++. To expand upon this point a little, you can use multimethods to do pattern-matching in the style of ML and similar languages. So, to pinch an example from the pugs tree (examples/functional/fp.p6) multi sub length () returns Int { 0

Re: Mutil Method Questions

2006-06-23 Thread Steffen Schwigon
Steffen Schwigon <[EMAIL PROTECTED]> writes: > multi sub talk () { say 'Loose Talk Is Noose Talk.'; } > multi sub talk (String $msg) { say $msg; } > multi sub talk (String $msg, Int $times) { say $msg x $times; } BTW, because we are just on-topic, can someone explain, when these types above

Re: Mutil Method Questions

2006-06-23 Thread Steffen Schwigon
"Chris Yocum" <[EMAIL PROTECTED]> writes: > Hi All, > At the risk of sounding a bit thick, I have a couple of questions > about Perl6's multi keyword and mutilmethod in general. This seems > like overloaded functions from C++ so why do we need a key word to > declare them rather than using so