Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:76434 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 44014 invoked from network); 11 Aug 2014 16:52:57 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 11 Aug 2014 16:52:57 -0000 Authentication-Results: pb1.pair.com smtp.mail=ocramius@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=ocramius@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.216.45 as permitted sender) X-PHP-List-Original-Sender: ocramius@gmail.com X-Host-Fingerprint: 209.85.216.45 mail-qa0-f45.google.com Received: from [209.85.216.45] ([209.85.216.45:41762] helo=mail-qa0-f45.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 07/63-22956-8E4F8E35 for ; Mon, 11 Aug 2014 12:52:56 -0400 Received: by mail-qa0-f45.google.com with SMTP id cm18so7819501qab.4 for ; Mon, 11 Aug 2014 09:53:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=FNM5K2VKVJ2GbOyIStt7RmQ1iXSE8DVlBUUHsg2AIOQ=; b=lvTatudrUtnIUi9narBccU8FHE6pB5+OpGmfVWIkMIfNeIi6jPy7mmiRTq91gt7ogV Gar2S0U/A8DON/fbI7On06nQOFyFKeOEHYtxUAFM8sW9Efb9a/bXkhwiVSSrMTsP2qQJ IkRXQ54vc1wkW9LlV9quuDvadUR3IZpySSpZzujUdStRnYLOHGSpG6GpUCXIma5RDOfp OCNfaDI4DX94DfSu92Zp10TdeNdog2YapFe6msr3xYZXAM+USKGYQEZRHZBysQjkJTpK DtqNdF6/em+AG9ekcQZfI9w4cKb3/5wTtEqld8MsifmmMxCJ4pXnwjpPMPuVQw8WTD8h lL4g== X-Received: by 10.229.68.131 with SMTP id v3mr64818754qci.10.1407776014022; Mon, 11 Aug 2014 09:53:34 -0700 (PDT) MIME-Version: 1.0 Received: by 10.140.18.230 with HTTP; Mon, 11 Aug 2014 09:53:13 -0700 (PDT) In-Reply-To: References: Date: Mon, 11 Aug 2014 18:53:13 +0200 Message-ID: To: Chris Wright Cc: Julien Pauli , Ferenc Kovacs , Tom Oram , PHP Internals Content-Type: multipart/alternative; boundary=001a113395923d3e5005005d656a Subject: Re: [PHP-DEV] Reflection to remove final From: ocramius@gmail.com (Marco Pivetta) --001a113395923d3e5005005d656a Content-Type: text/plain; charset=UTF-8 On 11 August 2014 18:44, Chris Wright wrote: > I don't think that it even makes sense to have this as a possibility > for internal classes. > Even leaving everything else outside, I think internal classes should become less magic and more transparent over time. The current "fixing" of internal classes has been to disallow operations in other PHP APIs, while the correct fix would be to make them `final`, with a `final public function __wakeup`, with a `final public function __construct` and so on: at least the limitations would make sense from a userland perspective as well. Marco Pivetta http://twitter.com/Ocramius http://ocramius.github.com/ --001a113395923d3e5005005d656a--