[Python-Dev] [Python-ideas] PEP 3101 (Advanced string formatting) base 36 integer presentation type (original) (raw)
Antoine Pitrou solipsis at pitrou.net
Sat Oct 8 17:27:16 CEST 2011
- Previous message: [Python-Dev] [Python-ideas] PEP 3101 (Advanced string formatting) base 36 integer presentation type
- Next message: [Python-Dev] [Python-ideas] PEP 3101 (Advanced string formatting) base 36 integer presentation type
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Sat, 08 Oct 2011 17:14:55 +0200 Victor Stinner <victor.stinner at haypocalc.com> wrote:
Le 08/10/2011 15:03, Antoine Pitrou a écrit : > On Fri, 07 Oct 2011 21:14:44 -0600 > Jeffrey<jss.bulk at gmail.com> wrote: >> I would like to suggest adding an integer presentation type for base 36 >> to PEP 3101. I can't imagine that it would be a whole lot more >> difficult than the existing types. Python's built-in long integers >> provide a nice way to prototype and demonstrate cryptographic >> operations, especially with asymmetric cryptography. (Alice and Bob >> stuff.) Built-in functions provide modular reduction, modular >> exponentiation, and lots of nice number theory stuff that supports a >> variety of protocols and algorithms. A frequent need is to represent a >> message by a number. Base 36 provides a way to represent all 26 letters >> in a semi-standard way, and simple string transformations can >> efficiently make zeros into spaces or vice versa. > > Why base 36 rather than, say, base 64 or even base 80?
Base 85 is the most efficient base to format IPv6 addresses! http://tools.ietf.org/html/rfc1924
Indeed, I meant base 85. There's a specification that doesn't rely on long integer division: http://en.wikipedia.org/wiki/Ascii85
Regards
Antoine.
- Previous message: [Python-Dev] [Python-ideas] PEP 3101 (Advanced string formatting) base 36 integer presentation type
- Next message: [Python-Dev] [Python-ideas] PEP 3101 (Advanced string formatting) base 36 integer presentation type
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]