Hi All, I adore the "kv" method:
$ p6 'for "abc\n23\n4.56".lines.kv -> $i, $j { say "$i $j" };' 0 abc 1 23 2 4.56 So, I decided to go and look at: https://docs.perl6.org/routine/kv multi method kv(Any:U: -->List) multi method kv(Any:D: -->List) Okay, here is what I see: "method" is .foo style of a routine "Any:U:" and "Any:D:" are what goes in front of .foo and it can be of type "Any". https://docs.perl6.org/type/Any ":D" mean constrained, meaning it much have something What is ":U"? Whatever ":U", how can it be both? The second ":" is the delimiter for what goes in front of the .foo, meaning it has finished its declaration of what that in front is. Kind of like a comma. "-->List" mean something is returned of type "List" https://docs.perl6.org/type/List 0 abc 1 23 2 4.56 How have I done so far? And is there a list somewhere of the meanings of ":U" and ":D" and such so the next time I see one that I do not recognize, I can look it up? Many thanks, -T