Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:107729 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 98033 invoked from network); 30 Oct 2019 00:08:43 -0000 Received: from unknown (HELO php-smtp3.php.net) (208.43.231.12) by pb1.pair.com with SMTP; 30 Oct 2019 00:08:43 -0000 Received: from php-smtp3.php.net (localhost [127.0.0.1]) by php-smtp3.php.net (Postfix) with ESMTP id 9A6E72D2014 for ; Tue, 29 Oct 2019 14:56:28 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp3.php.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS3215 2.6.0.0/16 X-Spam-Virus: No Received: from mail-yw1-xc2a.google.com (mail-yw1-xc2a.google.com [IPv6:2607:f8b0:4864:20::c2a]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp3.php.net (Postfix) with ESMTPS for ; Tue, 29 Oct 2019 14:56:28 -0700 (PDT) Received: by mail-yw1-xc2a.google.com with SMTP id k127so158077ywc.6 for ; Tue, 29 Oct 2019 14:56:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=newclarity-net.20150623.gappssmtp.com; s=20150623; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=o8YgZwRlZ+Eb5zVkVmHrJ0OKZH271XumSA7tXobdflE=; b=xagxTunUEpbHsJEP1mtqjtbX0PNjpeT7tHr5Yyua+FouQuC+or6QUIYB7Hq6x2MRwi bU7ZcZ47fx4BRd6BdnyHvuJ7AxJfVm+Z6h9MnWxCK8Mf6xnjKx7jYhmFG4PyOMTb2GHb /Jv7FrbLBVOTzhqCrl1E2X27mSxWPOKCluqnixiFlvl7vlySAGpuO9KHhHxwcHJCxybE 1FoYhCw+m5bryH8bF0FgY0QbgBOY1lj1xtjXYGifMz8Am3NcHrsKiM/KvI77xM2lt+UX 8tNCXdI3Ow7t5a4nKUopWAT5hQ0YzAjJdnqkGkaVeP0jRKiZi0u3AiXF55hcsqqzNJWB QuDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=o8YgZwRlZ+Eb5zVkVmHrJ0OKZH271XumSA7tXobdflE=; b=aV/6F1s4mAsbF2LLTvDDB71wKOVMoR06kX9zMvZkgK8ej9aJkeHRli/YK8uKAQG6y/ fWmORCmSsSKJE/DyLwO62PO+qrnaeJ9EvhAA2qUM+BOUVT3RoI73vCJ1KmSVkCPRHPCv TaFyQzXggjg60RgkbXt9sLbAmfTZL11Y+Zn2q9DzPLlZpz/+rezUnuHxb8LSk3XQsr80 ZgdjNB4ngOu8In0X9JJsXq7hzvPKt85USnZYMjqmpSR1awGRe6V8sEhhRRiEX6xqDqdL xRamy8KkYOo6dNmQwB8GH/YyNU18zIduIepTs/dyIXXvEg9cJ7RKPNgNspGPMZUBjtwR KMYw== X-Gm-Message-State: APjAAAV9mC6JNGxHufxrPsN+6X3IRZfkiH9uzC+j10NNOaiXYcskV52J ZlLy+ZllEPgRi+dEjzRzVtvkXQ== X-Google-Smtp-Source: APXvYqwNt/yXhxTiYNNpWjTvxK2TnYiQXJ6vT4RaaGt8H1drJ+Xkpvtfr9jivj85O12BboFEOvSahw== X-Received: by 2002:a81:5888:: with SMTP id m130mr18154354ywb.459.1572386187456; Tue, 29 Oct 2019 14:56:27 -0700 (PDT) Received: from ?IPv6:2601:c0:c680:5cc0:4525:1f1f:5174:b995? ([2601:c0:c680:5cc0:4525:1f1f:5174:b995]) by smtp.gmail.com with ESMTPSA id t7sm82380ywe.19.2019.10.29.14.56.25 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 29 Oct 2019 14:56:25 -0700 (PDT) Message-ID: <2336E1EC-6370-4D17-BC5D-427367E627EA@newclarity.net> Content-Type: multipart/alternative; boundary="Apple-Mail=_D57F2169-E2B6-4875-8EB0-773362F94240" Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.11\)) Date: Tue, 29 Oct 2019 17:56:25 -0400 In-Reply-To: <374ad5f6-be02-8762-c4c3-12cf34e70cad@gmail.com> Cc: PHP internals To: Rowan Tommins References: <9d3f9895-5ab6-1d75-4eb2-0ba93f13a8fe@gmail.com> <9D2698F0-49A4-4EA0-BEEE-552D28BE995A@newclarity.net> <374ad5f6-be02-8762-c4c3-12cf34e70cad@gmail.com> X-Mailer: Apple Mail (2.3445.104.11) X-Envelope-From: Subject: Re: [PHP-DEV] Optional pre-compiler for PHP8? From: mike@newclarity.net (Mike Schinkel) --Apple-Mail=_D57F2169-E2B6-4875-8EB0-773362F94240 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii > On Oct 29, 2019, at 5:49 PM, Rowan Tommins = wrote: >=20 > I think the problem is that as soon as you have two engines targeting = different feature sets, it will be hard to persuade people to spend = equal attention on both. If all the new features end up being added to = one engine, the other one is going to increasingly feel like "legacy = mode", rather than "equal but different". That is a fair point. > It would be much better to keep it separate, and opt into it via a = declare() statement, or a package configuration, or a file extension. = There have been proposals for a single flag, lots of separate flags, a = complete "P++" dialect, or bundles of settings ("Editions"). Correct me if I am wrong, but all of those have been objected to, = strenuously, by at least several people on the list. What will it take to finally get enough consensus to move forward? > Both/all modes should get the same performance improvements, except = where the actual features are necessarily slower or faster. Fine. But a pre-compiler still could have merit. One of the things I would like to see from a pre-compiler is getting rid = of the need to deal with an autoloader and hence we able to store = multiple related classes in the same file. =20 Primarily I would like this will doing R&D on a project idea prior to = fully understanding what the object hierarchy needs to be. That, of = course, would conflict with the non-pre-compiled code by its very = nature. -Mike --Apple-Mail=_D57F2169-E2B6-4875-8EB0-773362F94240--