Larry Wall wrote: > A multi sub presents only an MMD interface, while a multi method presents > both MMD and SMD interfaces. In this case, there's not much point in the > SMD inteface since .. used as infix is always going to call the MMD interface.
So: multi method : MMD and SMD multi sub: MMD only method: SMD only sub: no dispatching right? And just so that it's clear: when you talk about the SMD interface, you're talking about being able to say "$var.foo" instead of "foo $var", right? Whereas MMD doesn't have any special calling syntax. Otherwise, the only difference between MMD and SMD would be the number of arguments that are used for dispatching purposes (all of them vs. just the first one). Can subs be declared within classes? Can methods be declared without classes? If the answers to both of these questions are "no", then it occurs to me that you _could_ unify the two under a single name, using the class boundary as the distinguishing factor (e.g., a method is merely a sub declared within a class). If the answer to either is "yes", I'd be curious to know how it would work. -- Jonathan "Dataweaver" Lang