Thanks for the clear answers.

Larry:
> I think that currying should be extended to
> handle any caller-instituted defaulting.

Argh. So obvious! (So of course I missed it.)


> Basically, the parameter list of the subroutine
> is already providing a limited namespace to be
> shared by caller and callee.
> ...
> But I think it would be wrong for the callee to
> start forcing its namespace into the namespace
> of the caller beyond what we already do with
> named parameter syntax (and $_).

Yes. I was following the same principles.

But I much prefer your route, that is, to use
assuming (a suggested perl lingo replacement
for currying) which so clearly fits the bill.

I love (natural) brevity, so perhaps one could
have .assuming map passed arg values that are
variables (rather than pairs) to a target arg
of same name:

    my $tail = "cut_short";
    my $ears = "cut_long";
    Dog.assuming($tail, $ears);

What's the briefest way to say:

    for [Dog, Devil] { use .assuming($tail, $ears) };

Presumably this won't work:

    use (Dog&Devil).assuming($tail, $ears);

--
ralph

Reply via email to