Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:80417 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 11428 invoked from network); 12 Jan 2015 12:58:25 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 12 Jan 2015 12:58:25 -0000 Authentication-Results: pb1.pair.com header.from=francois@tekwire.net; sender-id=softfail Authentication-Results: pb1.pair.com smtp.mail=francois@tekwire.net; spf=softfail; sender-id=softfail Received-SPF: softfail (pb1.pair.com: domain tekwire.net does not designate 212.27.42.2 as permitted sender) X-PHP-List-Original-Sender: francois@tekwire.net X-Host-Fingerprint: 212.27.42.2 smtp2-g21.free.fr Received: from [212.27.42.2] ([212.27.42.2:26747] helo=smtp2-g21.free.fr) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 86/C0-04585-0F4C3B45 for ; Mon, 12 Jan 2015 07:58:25 -0500 Received: from moorea (unknown [82.240.16.115]) by smtp2-g21.free.fr (Postfix) with ESMTP id E00FF4B0253; Mon, 12 Jan 2015 13:56:12 +0100 (CET) Reply-To: To: "'Sara Golemon'" Cc: "'Pierre Joye'" , "'Stanislav Malyshev'" , "'PHP internals'" References: <54B1AA31.6050703@gmail.com> <003901d02de5$53732480$fa596d80$@tekwire.net> <005a01d02e1a$02d27a00$08776e00$@tekwire.net> In-Reply-To: Date: Mon, 12 Jan 2015 13:58:15 +0100 Message-ID: <008f01d02e67$6e92ad80$4bb80880$@tekwire.net> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Outlook 14.0 Thread-Index: AQHdpO6kBDBjSAQ05ND+I0bfKmNeFQIeJCUTAflXB0ABzhWVuwG23BUcAlMscacBvL1qjQIsV4OvnDK6AeA= Content-Language: fr X-Antivirus: avast! (VPS 150112-0, 12/01/2015), Outbound message X-Antivirus-Status: Clean Subject: RE: [PHP-DEV] One API to rule them all? (Was: Extension Prepend Files) From: francois@tekwire.net (=?UTF-8?Q?Fran=C3=A7ois_Laupretre?=) > De : php@golemon.com [mailto:php@golemon.com] De la part de Sara > Golemon > Why so limited? Like, why disallow objects completely? That feels > like a big step backward for PHP. Any why not computed constants? > (Assuming they stay constant throughout the process lifetime) This is not what we will release, if we decide to do it one day. This = scope only applies to a first prototype: just enough to evaluate the = concept, but not too much to avoid spending too much time before having = a working prototype. The same for you when you add the code to generate = for HHVM. I think it's enough to agree on a concept. =20 > I'll be honest, I'm not a big fan of code-generation. I find it > introduces complexity and it's not needed here. Lots of languages > manage to put together a stable API without resorting to code > generators. I am not crazy about it either, I just want to generate code for = argument parsing (removing every access to zval, dealing with 'mixed' = type, checks...), return value (convert to zval, maybe a pair of = checks), and the global 'glue' code (global header file, = function/constant declare/undeclare, all the boring stuff). Some of this = is too complex for C macros. The rest is provided by the user in C and = stays in C. This code will use C macros to access what we want to = abstract. Regards Fran=C3=A7ois