On 11/21/05, Ingo Blechschmidt <[EMAIL PROTECTED]> wrote:
> Hm. How is (*@;AoA) different from (Array [EMAIL PROTECTED]) then? (Assuming 
> that
> foo(@a; @b) desugars to foo([EMAIL PROTECTED], [EMAIL PROTECTED]).)

Well, it's not at all, under that assumption.  But that assumption is
wrong.  I think foo(@a; @b) doesn't have a sugar-free form (that is to
say, it is the sugar-free form).  Among things that desugar to it:

    @a ==> foo() <== @b
    foo(@a) <== @b
    @a ==> @b ==> foo()   # maybe; don't remember

To illustrate:

    sub foo ([EMAIL PROTECTED]) {
        say [EMAIL PROTECTED];
    }
    sub bar (*@;a) {
        say +@;a;
    }
    foo(1,2,3; 4,5,6);   # 6
    bar(1,2,3; 4,5,6);   # 2

That is, the regular [EMAIL PROTECTED] has "concat" semantics.  However, I'd 
like to
argue that it should have "die" semantics, for obvious reasons.

Luke

Reply via email to