Re: hints and constraints

From: Date: Thu, 05 Feb 2015 13:40:29 +0000
Subject: Re: hints and constraints
References: 1 2 3  Groups: php.internals 
Request: Send a blank email to [email protected] to get a copy of this message
Lester Caine wrote on 05/02/2015 12:33:
On 05/02/15 11:37, Andrea Faulds wrote:
The current description isn’t totally inaccurate, but I had considered renaming the RFC since “big integer support” implies we don’t already have support for big integers, though we do in the form of ext/gmp. A better title for the RFC might be “make PHP integer type be arbitrary-precision”. Still, it’s a minor issue at best.
Current integer variable has a constrained value. 64bit 'fixes' have created a new set of rules to go with that.
There is nothing new about PHP's userland int type being 64-bit on 64-bit platforms. For instance, raising 2 to the power of 62 returns exactly the same thing on every version of PHP back to 4.3.0: http://3v4l.org/VBMbv
That code is also broken on 64-bit platforms, and has been for a decade. Actually, longer: x86 wasn’t the first architecture to support 64-bit, but it supporting it certainly increased the prominence of 64-bit computing.
Broken in a way that was managable, but it is only in the last few years that windows itself has become 64bit although 32bit builds are still required in a number of marketplaces since 64bit ones don't work. That the transition has not been handled well applies everywhere!
The classic use of PHP is the LAMP stack: Linux, Apache, MySQL, PHP. Linux distributions have had good support for 64-bit architectures for years, so many, probably most, production installations of PHP are 64-bit builds.

Thread (10 messages)

« previous php.internals (#81924) next »