bit.ops defines some ops on strings, and not others. I was wondering if
anyone thinks the following would be useful (I'm offering to write them,
as it won't be much work):
        lsls(inout STR, in INT)
        lsrs(inout STR, in INT)

and, of course, their appropriate permutations.

For those who haven't looked at bit.ops, lsl and lsr are logical shift
left and logical shift right. Doing this operation on strings (as bands,
bors and bxors do) would allow the full range of bit-manipulation to be
done quickly on strings-as-bitfields (though, of course, it's already
possible even without these operations).

I don't see shls and shrs being useful (or terribly meaningful), but
correct me if I'm wrong there.

Of course, there's the small matter that shifting left might grow your
string, but this should not be a major concern for Parrot. I don't think
shifting right should shrink the string.

-- 
Aaron Sherman <[EMAIL PROTECTED]>
Senior Systems Engineer and Toolsmith
"It's the sound of a satellite saying, 'get me down!'" -Shriekback


Reply via email to