Re: [RFC] Pure-code source files via the .phpc extension
| From: | Michael Morris | Date: | Tue, 16 Jun 2026 22:19:46 +0000 |
| Subject: | Re: [RFC] Pure-code source files via the .phpc extension | ||
| References: | 1 2 3 4 5 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-131333@lists.php.net to get a copy of this message | ||
On Tue, Jun 16, 2026 at 3:34 PM Hendrik Mennen <hmennen90@gmail.com> wrote:
>
>
> Am 16.06.2026 um 20:43 schrieb Derick Rethans <derick@php.net>:
>
> On 16 June 2026 09:47:07 BST, Hendrik Mennen <hmennen90@gmail.com> wrote:
>
>
>
> Am 16.06.2026 um 09:26 schrieb Davey Shafik <me@daveyshafik.com>:
>
> On Jun 15, 2026, at 21:25, Hendrik Mennen <hmennen90@gmail.com> wrote:
>
> <snip>
>
>
> If that friction is not worth solving, that is a legitimate position
> and I would rather hear that than dress the proposal up to look
> weightier than it is. Three honest paths from here, and I would find
> it useful if respondents could say which they are closest to:
>
> 1. The friction is real and a small targeted addition is worth
> shipping. (what the RFC proposes)
> 2. The friction is real but the mechanism is wrong. (in which case:
> what signal would you prefer? per-file declare, magic first line,
> SAPI-only, ...)
> 3. The friction is not real, or not worth a language change at all.
>
>
> I am strongly in camp 3; I see zero value in this.
>
> Adding meaning to a specific extension is a BC break when no extensions
> have meaning prior. In addition, it makes it difficult to identify the file
> type from the code alone if you're not familiar with it.
>
> There really isn't any friction here, any decent editor or IDE will give
> you a default file header with the open tag (at least). At worst they'll
> auto-complete after at most 2 characters.
>
> It's also important to note that other languages have explicit template
> files like Jinja or ERB, PHP does not have this and is itself essentially
> both the template language and the full programming language.
>
> Yes it's a legacy way of doing things like ASP classic or ColdFusion, but
> that doesn't make it wrong or bad.
>
> - Davey
>
>
> Hi Davey,
>
> Thanks for the direct camp-3 position - the (1/2/3) framing was
> intended exactly to surface that kind of clarity, and a voter
> landing explicitly in 3 with substantive reasons is more useful
> to me than vague reservations would have been.
>
>
> Did you generate this reply with an LLM? It certainly reads like that.
>
> I'm asking because I find it an extremely rude thing to do, unless it is
> to assist with language.
>
> Because if people don't want to spend their own time and effort coming
> with an argument, then I also don't find it necessary for me to reply to
> them, or hear what they're saying.
>
> cheers
> Derick
>
>
>
> Hi Derick,
>
>
> Yes, I use AI but for assist - not to „copy-paste“ reply.
>
>
> Reason for this: I’m native German and it’s easier for me to write an
> answer with LLM instead of using google translator for words, which don’t
> come to my mind.
>
> To clarify my position with LLM: It’s a tool and not a placement.
>
>
> Hendrik
>
>
Here's a thought - Instead of .phpc as an extension, why not <?phpc or even
<?psf (PHP source file). Explicitly tell the engine "nothing should be
before this other than a shebang, no further tags will be in this file.
That also solves the inadverted echo problem and would be fully BC.
Not convinced it would be useful, but it has fewer problems.