Re: [Pre-RFC] Reified generics

From: Date: Mon, 10 Aug 2026 10:16:01 +0000
Subject: Re: [Pre-RFC] Reified generics
References: 1 2 3 4 5 6  Groups: php.internals 
Request: Send a blank email to internals+get-132195@lists.php.net to get a copy of this message
Hello, internals! Want to share some proof-of-concept and ideas regarding the Php Generics. I've recreated the memoization generics as a user-land library https://github.com/lisachenko/userland-php-generics, installable as a simple composer package to check the concept itself and see where we have limits now. What I discovered - that a significant part of the core is suitable to define generics *and keep the opcode arrays shared *between all concrete memoized versions with different types: I tried to deep-clone a template's zend_class_entry under a new name and rewrited only the zend_type of its properties, parameters and return types while sharing the compiled method bodies through the engine's own op_array refcount. Thus, cost of a specialization is about sizeof(zend_op_array) per method, independent of how large those methods are, rather than a full copy of the opcodes. Best regards, Alexander чт, 6 авг. 2026 г. в 18:46, Larry Garfield <larry@garfieldtech.com>: > On Thu, Aug 6, 2026, at 4:53 AM, Barel wrote: > > > Thanks, it seems that to join a channel I also need to know the server > > where It lives (I've never used Discord much before). Can you share > > this info as well? > > > > Cheers > > > > Carlos > > https://phpc.chat/ > > The PHP Community chat is unofficial, but lately it's where the big names > are hanging out, including a lot of Internals regulars. Beware, the > Internals channel is annoyingly noisy and has a hard time staying on topic. > :-) > > --Larry Garfield >

« previous php.internals (#132195) next »