On 20.06.25 10:15, Hans Henrik Bergan wrote:
On Fri, 20 Jun 2025 at 09:15, Marc Bennewitz<marc@mabe.berlin> wrote:On 19.06.25 18:08, Calvin Buckley wrote: I think the biggest arguments against this would be: - embedded systems; think of PHP in use for i.e. router web UIs. While I suspect a lot of these are going to be i.e. AArch64/RV64 in the future, there might be a long tail of existing systems. Of course, how many would upgrade to PHP 9? While new deployments trend toward 64-bit (e.g. AArch64), there's definitely a long list of devices — particularly in legacy environments — still running 32-bit systems. But realistically, how many of these will ever upgrade to PHP 9? Probably very few. These systems often stay locked to whatever version was originally shipped, and their vendors are unlikely to invest in major version bumps. - WebAssembly; I don't know how widespread the Memory64 proposal is yet. We're using WebAssembly in the docs pages for runnable examples. I don't know either. ChatGPT tells :The Memory64 proposal was formally standardized (Phase 4) in November 2024, backed by strong votes and endorsement from the WASM Community Group. It's enabled by default in Firefox 134 and Chrome 133+, with Safari still working on implementation. Major runtimes like V8, Wasmtime, Wasmer, WASM2C support Memory64 Toolchains including LLVM, Emscripten, Binaryen, WABT support it; WASI‑SDK has patches in progressAnd some niche cases like i.e. iSH (which emulates x86-32 on iOS). This seems to be for very niche projects in itself already and running PHP within such is even more niche - if present at all (outside of "because I can" reasons). The other options include making zend_long always 64-bit and accept the performance penalty for 32-bit, or making 32-bit best-effort rather than providing any guarantees. Is int64_t (size of long long 8) available on all systems (like WebAssembly)? The downside here, please correct me if I'm wrong, is that this increases complexity instead of reducing it for how much value?This seems to be for very niche projects in itself already and running PHP within such is even more niche - if present at all (outside of "because I can" reasons).3v4l.org use 32bit WASM php in production, see it for yourself at https://3v4l.org/
You misunderstood my sentence as I haven't told something else. My answer for the niche projects belongs to "... i.e. iSH (which emulates x86-32 on iOS)."
About WebAssembly I wrote:
I don't know either. ChatGPT tells :
The Memory64 proposal was formally standardized (Phase 4) in November 2024, backed by strong votes and endorsement from the WASM Community Group. It's enabled by default in Firefox 134 and Chrome 133+, with Safari still working on implementation. Major runtimes like V8, Wasmtime, Wasmer, WASM2C support Memory64 Toolchains including LLVM, Emscripten, Binaryen, WABT support it; WASI‑SDK has patches in progress
OpenPGP_0x3936ABF753BC88CE.asc
Description: OpenPGP public key
OpenPGP_signature.asc
Description: OpenPGP digital signature