Richard (>): > I came across the idiom > > print "P4\n$w $h\n"; > for my $y (0..$h-1) { > print pack 'B*', pack 'C*', map dot($_, $y), 0..$w-1; > } > > in a perl5 program for outputting dots in a graphical format. dot() produces > a 0 or -1. > > I found the 'pack' function in perl6, but it does not seem to work the same.
Two differences that I can think of: * The pack function in Rakudo is not fully implemented. For the cases "B*" and "C*", I can definitely imagine that it doesn't work yet. Patches are welcome. I also plan to find some time to work more on it myself. * The fundamental difference in Perl 6 would be that a call to 'pack' would result in a Buf, not a string as in Perl 5. (This is because Perl 6 makes a clear separation between sequences of bits/bytes, and strings of characters. 'pack' deals in the former.) It's not immediate to me that a Buf could be output without first having been converted to a Str. A conversion may or may not be necessary for it to work. // Carl