On Sat Sep 26 10:56:40 2009, dolmen wrote:
> Evaluation of $*OUT.&printf does not gives a result consistent with
> $*OUT.&say
>
> <dolmen> rakudo: say $*OUT.&printf.WHAT;
> <p6eval> rakudo e33d20: OUTPUT«elements() not implemented in class
> 'Sub'in Main (/tmp/iPwK5u8ApO:0)»
>
> <dolmen> rakudo: say $*OUT.&say.WHAT;
> <p6eval> rakudo e33d20: OUTPUT«IO()<0x2b0344268580>Bool()»
> <dolmen> rakudo: say &say.WHAT;
> <p6eval> rakudo e33d20: OUTPUT«»
> <dolmen> rakudo: $*OUT.printf("%05d", 5);
> <p6eval> rakudo e33d20: OUTPUT«00005»
>
> --
> Olivier Mengué
> http://o.mengue.free.fr/
Note:
< sorear> say $*OUT.&say.WHAT === say (say($*OUT)).WHAT
So that may not be quite what you're looking for, there (but the syntax
you used does generate consistent results now also!). I assume you're
wanting something more like:
< [Coke]> rakudo: say $*OUT.^methods.first('printf').WHAT
<+p6eval> rakudo 3fbd62: OUTPUT«Multi()»
< [Coke]> rakudo: say $*OUT.^methods.first('say').WHAT
<+p6eval> rakudo 3fbd62: OUTPUT«Multi()»
So, this looks good to me. Assigning to moritz++ for testing.
--
Will "Coke" Coleda