> > ($obj1, $obj2)->foo(@args); > > Is that merely sugar for: > > # errr, $_.foo(@args) ? > $_->foo(@args) foreach($obj1, $obj2);
No. What you showed would be achieved with either a hyperoperation: ($obj1, $obj2)^.foo(@args); or a superposition: any($obj1, $obj2).foo(@args); What I was proposing was that, since: method foo ( $me : $big, $boy ) {...} can be called via either of: foo $obj: @args; or: $obj.foo(@args); then, by analogy: method foo ( $me, $again : $big, $boy ) {...} should be able to be called via either of: foo $obj1, $obj2 : @args; or: ($obj1, $obj2).foo(@args); > or is there something more interesting going on? The latter. :-) > Maybe we need a method call hyperoperator. I didn't just say that. Since we already have a method call (non-hyper)operator, and since the hyper-prefix will "hype" *any* operator, we already have a method call hyperoperator: # method call # method hyper-call $obj.method(@args) --> @objlist^.method(@args) > > PS: I'd just like to point out that people gasped in horror when > > I presented this idea at YAPC::NA::2001 as part of the > > (soon-to-be-released) Klingon binding of Perl. ;-) > > I'll add my own, now. nuch SoH! bIQambogh DaqDaq qaHoH! DamIan!