Minor nitpick:

Any types used will constrain multis to explicitly matching those types
or compatible types, so:

        our Int proto max(Seq @seq, *%adverbs) {...}

Would not allow for a max multi that returned a string (probably not a
good idea).

IIRC, perl 6 doesn't pay attention to the leading Int here except when
dealing with the actual code block attached to this - that is, "Int"
isn't part of the signature.  If you want Int to be part of the
signature, say:

       our proto max(Seq @seq, *%adverbs -> Int) {...}

More to the point, I _could_ see the use of type parameters here
(apologies in advance if I get the syntax wrong; I'm going by memory):

       our proto max(Seq of ::T [EMAIL PROTECTED], *%adverbs -> ::T) {...}

This would restrict you to methods where the return type matches the
list item type.

Jonathan "Dataweaver" Lang

Reply via email to