Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:68719 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 23441 invoked from network); 30 Aug 2013 12:31:07 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 30 Aug 2013 12:31:07 -0000 Authentication-Results: pb1.pair.com smtp.mail=ircmaxell@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=ircmaxell@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.128.171 as permitted sender) X-PHP-List-Original-Sender: ircmaxell@gmail.com X-Host-Fingerprint: 209.85.128.171 mail-ve0-f171.google.com Received: from [209.85.128.171] ([209.85.128.171:44600] helo=mail-ve0-f171.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 0D/FA-64695-88090225 for ; Fri, 30 Aug 2013 08:31:04 -0400 Received: by mail-ve0-f171.google.com with SMTP id pa12so1283036veb.16 for ; Fri, 30 Aug 2013 05:31:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=7BQhMQS9xS3x5OS+6wFNpvKlg90bvl+3awF8/vr2APg=; b=eHW3DuYbURGG8hobekLUdji8V9kjegM2Rz+ssb3zXYLmAPLjEE2HsimyDaFLzSeB0b jhyI5VzmIcGu/fa+Ful2VBq7eImyyNFdfyqKrzAPCzY7bb/UpQLJ8Kc//OGZMHYZww0k xS06KGYgMqXjRRL4DpfQwHIO2BxDlgINDftbALIrx4w4c0+xu8Xp4Jx0vx8iIL/11bTw 5F80sKGcFlCvnVy6NnlqE1VddFEV1GgRXI4OmTAj8vSqTeA9ZoT0Oh+jW+BgeMnUNwkL yBgAN0XgbSGdhWNxIwaSZiGg3ZyszQrUU0GwAFXmXlQjwKK83PG/amjRxoCC/ADiKV4W LTLQ== MIME-Version: 1.0 X-Received: by 10.221.32.133 with SMTP id sk5mr365355vcb.27.1377865860754; Fri, 30 Aug 2013 05:31:00 -0700 (PDT) Received: by 10.58.94.201 with HTTP; Fri, 30 Aug 2013 05:31:00 -0700 (PDT) In-Reply-To: References: Date: Fri, 30 Aug 2013 08:31:00 -0400 Message-ID: To: "internals@lists.php.net" Content-Type: multipart/alternative; boundary=001a1133aa002db51904e52965ef Subject: Re: [DRAFT] [RFC] Function autoloading From: ircmaxell@gmail.com (Anthony Ferrara) --001a1133aa002db51904e52965ef Content-Type: text/plain; charset=ISO-8859-1 All, I have updated the RFC to include 2 new benchmarks. For normal class loading, this proposal shows at worst no change to loading time. At best, it may actually improve it because at least one zend_function_call is avoided (to spl_autoload_call). For constants and function calls, the benchmark shows that the difference is well within the margin of error for the test (considering variances of 5% to 10% were common in my running of the tests). So hopefully this will dispel any worry about performance regressions in currently defined cases. The times where performance will take a hit, is with undefined functions and constants. Today, an undefined function will fatal error, so this performance hit would be 0, as it would enable something that's not possible today. The only regression can be where autoloaders are defined, and people are relying on the legacy undefined constant behavior (which triggers an E_NOTICE). Anthony On Thu, Aug 29, 2013 at 9:23 PM, Anthony Ferrara wrote: > All, > > I have created a new draft RFC implementing function and constant > autoloading in master: > > https://wiki.php.net/rfc/function_autoloading > > All feedback is welcome. > > Thanks > > Anthony > --001a1133aa002db51904e52965ef--