Bitwise operators and shifts on integers past 128 bits, at the type's true width: and int128/uint128 shifts and not.bit at all 128 bits.
wide_bits.zg
# Bitwise operators and shifts on integers past 128 bits (owner, 2026-10-03: "Do the bit shit"),# at the type's true width: and int128/uint128 shifts and `not.bit` at all 128 bits.MAIN{let'a':not_std.uint256=2pow200plus12345;let'b':not_std.uint256=(2pow255)minus1;std::print.useful[('a'and.bit'b'),newln];std::print.useful[('a'xor'b'),newln];std::print.useful[('a'shl55)," ",('a'shr190),newln];let'n':not_std.int256=-(2pow200);std::print.useful[('n'or.bit7)," ",('n'shr3),newln];let'z':not_std.uint256=0;let'all':not_std.uint256=not.bit'z';std::print.useful['all',newln];let'u':uint128=1;let'top':uint128='u'shl127;let'flip':uint128=not.bit'u';std::print.useful['top'," ",'flip',newln];}