This is sharing a 'What?!!' moment and some aftermath with the
hope of some reduction of ignorance.

This is from some code I found:

    say my %h = % = %(:a(1));       # OUTPUT: «{a => 1}␤»

All whitespace after the identifier is optional--not changing the
assignment.

Reduced further:

    say % = %(:a(1));              # OUTPUT: «{a => 1}␤»

I don't know what the free-standing '%' means; my guess is that
it accepts the result of the assign-op as a term.  So it is the
same as the last '%'.

Is that correct?  Correct as Raku code and as what is happening.

Why, in the ' %= ' variant, is neither of these failing?
Is it not ambiguous with the '%=' operator?

And I found that '%=' is also indexed in the docs as a twigil,
but it is not in the docs.  Is i


Reply via email to