On 2007-09-22, Carl Banks <[EMAIL PROTECTED]> wrote: > Anyone with me here? (I know the deadline for P3 PEPs has passed; this > is just talk.)
Not me. > Not many people are bit-fiddling these days. I do. > One of the main uses of bit fields is flags, but that's not > often done in Python because of keyword arguments and dicts, > which are lot more versatile. Another major use, talking to > hardware, is not something oft done in Python either. I do it all the time. Bit fiddling is also required for implementing communications prototocols. > It seems like this occasional usage wouldn't justify having built-in > operators on its own. And with the int/long unification, it makes a bit > less sense to think of integers as a bit field. Python has these > operators because of its heritage, but Python continues to move away from > the bad habits of its ancestors (integer division and so on), and I > wonder if this isn't another one. > > Of course I'm not suggesting to get rid of bitwise operations altogether; > just make them builtin functions: "x & 1" becomes "bitwise_and(x,1)" and > so on. > > Is it worth it to make such a change? It would remove a lot of operators > (11 by my count), vastly simplifying syntax, Which, IMHO, is no small > thing. If you don't want to use the bitwise operations, then ignore them. Presto! Simpler syntax. > Obviously, how widespread their usage is would matter. But keep in mind > it would also be easy to convert the code automatically, because the > Python parser could reliably find all bitwise operations reliably. The resulting code wold be fugly. -- Grant -- http://mail.python.org/mailman/listinfo/python-list