A couple of days were plenty enough to whip up a new Perl 6 module, String::CRC32.
This is a straight conversion from the Perl 5 CPAN version of String::CRC32. That one uses some C/XS code though. I wrote the equivalent in Perl 6. Was quite simple actually, once I learned a bit more on numeric bitwise operators.
The classic ||
and &&
for bitwise "OR" and "AND" are now written as:
Bitwise OR '+|'
Bitwise AND '+&'
Bitwise XOR '+^'
So the following code:
$x &&= 0xFF;
becomes:
$x +&= 0xFF;
The reason behind this is that now there are not only numeric bitwise operators, but also boolean ones. You can read more in the official specification for Perl 6 operators.
You can download the code for the module on http://github.com/cosimo/perl6-string-crc32. Take a look at various other Perl 6 modules on modules.perl6.org.