(original) (raw)

On Thu, Sep 8, 2016 at 9:17 AM, Benjamin Peterson <benjamin@python.org> wrote:
> Does this mean that we might be able to have the built-in integer be
\> based
\> on int64\_t now? so Windows64 and \*nix64 will be the same?

The builtin integer type (in Python 3) is variable length.

indeed it is -- py2.7 also??

That's why I said "based on" -- under the hood, a C type is used, and IIUC, that type has been "long" for ages. And a long on Windows 64 (with the MS
compiler anyway) is 32 bit, and a long on \*nix (with the gnu compilers, at least) is 64 bits.

This doesn't expose itself to pure python (and sys.maxint is now gone) but it does get exposed in the C API, and in particular, when passing data back and forth between numpy and pure python (numpy doesn't support an unlimited integer like python), or working with buffers or bytearrays, or whatever in Cython.

Perhaps this is now a non-issue in py3 -- I honestly have not done any "real" computation work with py3 yet, but it sure is in 2.7

-CHB


--

Christopher Barker, Ph.D.
Oceanographer

Emergency Response Division
NOAA/NOS/OR&R (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception

Chris.Barker@noaa.gov