Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:119908 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 64574 invoked from network); 11 Apr 2023 11:42:39 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 11 Apr 2023 11:42:39 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id BA8621804A9 for ; Tue, 11 Apr 2023 04:42:38 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: * X-Spam-Status: No, score=1.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE, SPF_SOFTFAIL,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-oi1-f174.google.com (mail-oi1-f174.google.com [209.85.167.174]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Tue, 11 Apr 2023 04:42:38 -0700 (PDT) Received: by mail-oi1-f174.google.com with SMTP id z16so4851953oib.9 for ; Tue, 11 Apr 2023 04:42:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=golemon-com.20210112.gappssmtp.com; s=20210112; t=1681213357; x=1683805357; h=to:in-reply-to:cc:references:message-id:date:subject:mime-version :from:content-transfer-encoding:from:to:cc:subject:date:message-id :reply-to; bh=8SAUJ0ChtUkhcJTTckpRZejAVoWt+SaoI9di/ZcdRvY=; b=GZhLimTxcpisGZyINFjBiVek8r5Fzm2guTnRSclmHLD8HKrAHhQ5XB/9B/JTVP57gN k1cA9URhw+TQ5uTXzafLGe7JdYIMNU0SUAAozN33T72iYakkXbJ04X7zHR1SRqQuOfIb 9U6cWbMHnzi1mLbvuC+yWr9UHkFKOL9eimywa3dG1tMTP0F2iqK0vRI4BuliiDzCfFN7 oI/hqYKeznPh35BaceE2ZhkhN8Jdf2ehJnepeHilLQH16CE1HW7+pOf3AfBm0nZGIo2D tkGX0+c9u9AhvNgLwG8hi9NaMAT/mWICk+TluRAzbESX3X+zvBydXsfrD8BM1gbg28s8 GAhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1681213357; x=1683805357; h=to:in-reply-to:cc:references:message-id:date:subject:mime-version :from:content-transfer-encoding:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8SAUJ0ChtUkhcJTTckpRZejAVoWt+SaoI9di/ZcdRvY=; b=rdwYy/abcaaJF603kRrZQOGzcXRHIkNmrptsEqSybihMtEV8HF885hehvLuJmS/aiJ eHm8SlOZezEhbulFbIkf4VUqDCiLpptjk3rqc9TqtJybihjjVrrq88bsghHLGN5thVBL 74SWxhOFy0FhZSJiP21sTLXY+TfXCggxU7jS+cYfCXuxUTa8KJFqvqHPNhPgFzwFD5jr QlsxBmZNrE4vkczfNqV0z+v6VV+ImVQ9nc6Ufv/nEBA30xFJ+HfAed19ycD2s38mivNo G4j5gnmBtf7aIOGKTJqW8Mrq306OABr/4glnpy2K8dDAqrJofJcCRUmKLq9TN+MTmydJ C6aw== X-Gm-Message-State: AAQBX9e2yPlLqAf29DTu0e4f6+xW32koSEstQoDM9qIHMXCaZ/oayqDN 8ineGPxjib5Pn64oGs8QDpFcn5BoKaPDJCjLnqw= X-Google-Smtp-Source: AKy350ZXiJO+sCfnbHYYoNpXlF3SA5HBgDVP+D+l9kUdL32eeZ/HHLRamqY5NBww9NxDj2BSNuow+Q== X-Received: by 2002:a05:6808:e8a:b0:38b:8d27:ff52 with SMTP id k10-20020a0568080e8a00b0038b8d27ff52mr1080599oil.53.1681213357435; Tue, 11 Apr 2023 04:42:37 -0700 (PDT) Received: from smtpclient.apple (23-120-123-116.lightspeed.cicril.sbcglobal.net. [23.120.123.116]) by smtp.gmail.com with ESMTPSA id fb5-20020a0568083a8500b00386b8b1448dsm5385701oib.34.2023.04.11.04.42.36 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 11 Apr 2023 04:42:36 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (1.0) Date: Tue, 11 Apr 2023 06:42:25 -0500 Message-ID: References: Cc: PHP internals In-Reply-To: To: "G. P. B." X-Mailer: iPhone Mail (20E247) Subject: Re: [PHP-DEV] [RFC] New core autoloading mechanism with support for function autoloading From: php@golemon.com (Sara Golemon) > On Apr 10, 2023, at 07:17, G. P. B. wrote: >=20 > =EF=BB=BFHello Internals, >=20 > Dan and I would like to propose a new core autoloading mechanism that fixe= s > some minor design issues with the current class autoloading mechanism and > introduce a brand-new function autoloading mechanism: > https://wiki.php.net/rfc/core-autoloading At a high level: +1, would vote for again (I think I voted for this last tim= e it came up...) Initial thoughts, mostly based on replies so far: 1/ There's certainly some bike-shedding for the names to do. Good points ha= ve already been made and I won't belabor them. 2/ I'm unconcerned by the edge case brought up about load ordering as I feel= that having multiple definitions of a single function name in an autoload f= riendly codebase grouped in files which permit this kind of shenanigans is a= technical possibility, but a practical absurdity. Nobody should be designi= ng traps like that. 3/ Pinning concerns me a little, and we should certainly build some strong u= nittests to validate behavior here, but I'm confident that can be resolved d= uring implementation. 4/ If nothing else, I just look forward to gaining consistency here. autolo= ading being exclusive to classes has long annoyed me, just not quite to the p= oint of action. :) -Sara=