RE: Mutil Method Questions

2006-06-27 Thread Conrad Schneiker
From: Steffen Schwigon [mailto:[EMAIL PROTECTED] > Thomas Wittek <[EMAIL PROTECTED]> writes: > > Maybe we should steal the ruby "principle of least surprise" here, > > which I find a very good principle. > > I'm quite confident that Larry already stole all good principles he > could find. Me too

Re: Mutil Method Questions

2006-06-26 Thread Steffen Schwigon
Thomas Wittek <[EMAIL PROTECTED]> writes: > So it looks like we can hide several multis with one sub: > [ example ] Maybe the type system in Pugs is not yet in such a final state to experiment with it in all that details. I can construct other examples or "reverse engineer" the neighbor discussion

Re: Mutil Method Questions

2006-06-26 Thread Thomas Wittek
Steffen Schwigon: > Thomas Wittek <[EMAIL PROTECTED]>: >> Maybe I just phenomenally misunderstood multi subs, but unless I >> did, I can't see why we want to have subs when we can have multi >> subs that can do the same and even more. > > I understand your point and I confess I'm not sure. > > At

Re: Mutil Method Questions

2006-06-26 Thread Steffen Schwigon
Thomas Wittek <[EMAIL PROTECTED]> writes: > 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 behavio

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