Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:123567 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id F0FDC1A009C for ; Mon, 10 Jun 2024 16:12:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1718036020; bh=Ji2nIG2dnwzqU3M9Q7mjF2iNoR6izbomZR5+DwibCwg=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=H4lB/owFgK0Dc/kqH2w03TO2+z9wRU0ylxy1qAnj0YdpDsbSoYvgHd/GdOB+Z28lY wg08PGxmEjERu+PBF1yI0p9zoqHjDXccQKDMe1858Br9bhl25k9do8se++DdLtziYG Qa8zIyNvrEMGVPwPK/D6iWuw+mlTfYXUn3uwF9q9JbogVWlUvHYxdI+i3cXWhkPtEG 3xkcZ5DPShJ9v6AaLIH/cruYeXhRHLxf0s6yrpjpdL3J70n0TDlAFHXJHI3LN/2/zn 3BrZeNrrjIJOMtLmgIfHqajuqSjkyzv/tSj5jc6W5o3P6h80GUzKv5Fdu480oOerkO V2QXmf9qc/ifQ== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 3427218005F for ; Mon, 10 Jun 2024 16:13:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, HTML_MESSAGE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) X-Envelope-From: Received: from mail-yw1-f177.google.com (mail-yw1-f177.google.com [209.85.128.177]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Mon, 10 Jun 2024 16:13:35 +0000 (UTC) Received: by mail-yw1-f177.google.com with SMTP id 00721157ae682-62c5fd61d2bso1860517b3.3 for ; Mon, 10 Jun 2024 09:12:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1718035947; x=1718640747; darn=lists.php.net; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=E0s8pGogSXENI4XpM5Ld9uU/ON6r+aqB0SbcJwh+o1s=; b=KmLU+6jy3ERif6Cyp4Rq+EOHukEuM9VmiNI05hWubHcuS91Jke0DkOfkIbaOaKQdpo 6y1UEhckuLtBSdrBw6hl+iiEDCj0Z54fU16B9GW9EuBUYtYXwMGDv6GNdUV1LhvnnMte IRCGK+qX0HagsgY+v59dfh1VudwepzuPU2Cnejlit5jKYvdDVlxR2MHSZTlUEzCHgAcK 0ABEBhP6e7CmR2PJmpVMhob+mZZWDgnf9HUtuHQg2gqU6AleAkuyjJadjVQmDz0sLx8C vEgNUaU5Lz7kI0pH+vVLcpCCDTsTDAGkJu+pEkTBDG42m724ceprbd3TZtym/L3fDc2e IR3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718035947; x=1718640747; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=E0s8pGogSXENI4XpM5Ld9uU/ON6r+aqB0SbcJwh+o1s=; b=orSDCSO6Re41avkUdSJUErsfOB88c3QJRL38Fe4/0GVhiSuHc5pLApw5Gepf/ghGF0 4i+RaRWyfKiEdbjQAyIMV0u6tOtM8B581iHYhUDPUrBEpYOqjbCp9C2kgNqZFwiftTLy Cu3ZUJgEBiGkSjXfV1cNlg3Awqut6aXnWmWrOhI05ifUl4BSZ2w0wfS/X1LWuqafuhyP 4+oT4BURTgWcGu3P2Qh8JfmYn6nNApkKMiEO/YS8klUmQULgT8x4nGNSMFNU+LC0xnAg qr4QmccfaZSJo2ve2Nslb+XFg2c+FxAtX4czxzfGF+ali/okWAceRsp1iJSjF7V+AKpw 0KtQ== X-Gm-Message-State: AOJu0Yw2aPPxNy8BkQTff7/847DB3NhieqH8YimsxC+1DflOoUjiY197 06vGJeVs8ZZ6dSCJkrks45ccGdz94jGZXoWln/eC68Y51uZfTlX31d1Bc22dikxJcEADfFWlGJm l00gbl0Cz56T4fFlnb7UOmydq6qLLhg== X-Google-Smtp-Source: AGHT+IEc/cwNQAtPiNeu8p8gMJBteWhx31SQCZhwa9K/FIkf332Rw+8w/KgWdaHbnSyc/DWB1Q13YD2dNi8FdJfx2uM= X-Received: by 2002:a0d:fb02:0:b0:61b:1f0e:10 with SMTP id 00721157ae682-62cd558cf13mr92052667b3.4.1718035947146; Mon, 10 Jun 2024 09:12:27 -0700 (PDT) Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net MIME-Version: 1.0 References: <0a6a61cd-f203-4dea-a7f8-97e6b885c52d@app.fastmail.com> In-Reply-To: <0a6a61cd-f203-4dea-a7f8-97e6b885c52d@app.fastmail.com> Date: Mon, 10 Jun 2024 11:12:17 -0500 Message-ID: Subject: Re: [PHP-DEV] [RFC] Asymmetric Visibility, v2 To: Larry Garfield Cc: php internals Content-Type: multipart/alternative; boundary="000000000000575ae2061a8b6a55" From: tiffany.k.taylor@gmail.com (Tiffany) --000000000000575ae2061a8b6a55 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, May 29, 2024, 2:16=E2=80=AFPM Larry Garfield wrote: > As promised, Ilija and I offer this revised version of asymmetric > visibility. > > https://wiki.php.net/rfc/asymmetric-visibility-v2 > > It's still essentially the same as last year's version, but with a few > adjustments and changes: > > * readonly properties are now supported in a logical fashion. > * We've brought back the abbreviated form, as public-read, something else > set is the most common use case. > * The section on magic methods has been greatly simplified. The > implementation itself hasn't changed, but the explanation is a lot less > confusing now. > * We've explained how aviz interacts with hooks (they don't, really) and > with interface properties (in the obvious way), which didn't exist at the > time of the last draft. > * We've added a section with examples of how aviz is a concrete > improvement, even in a world with readonly and hooks. > * We've added a section discussing why the prefix-style syntax was chosen= . > > *dons flame retardant suit* > > -- > Larry Garfield > larry@garfieldtech.com Sending an email to quickly enable a new mailing list subscriber to engage in the conversation. --000000000000575ae2061a8b6a55 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

On Wed, May 29, 2024, 2:16=E2=80=AFPM Larry Garfield <<= a href=3D"mailto:larry@garfieldtech.com">larry@garfieldtech.com> wro= te:
As promised, Ilija and I offer = this revised version of asymmetric visibility.=C2=A0

https://wiki.php.net/rfc/asymmetric-visi= bility-v2

It's still essentially the same as last year's version, but with a = few adjustments and changes:

* readonly properties are now supported in a logical fashion.
* We've brought back the abbreviated form, as public-read, something el= se set is the most common use case.
* The section on magic methods has been greatly simplified.=C2=A0 The imple= mentation itself hasn't changed, but the explanation is a lot less conf= using now.
* We've explained how aviz interacts with hooks (they don't, really= ) and with interface properties (in the obvious way), which didn't exis= t at the time of the last draft.
* We've added a section with examples of how aviz is a concrete improve= ment, even in a world with readonly and hooks.
* We've added a section discussing why the prefix-style syntax was chos= en.

*dons flame retardant suit*

--
=C2=A0 Larry Garfield
=C2=A0 larry@garfieldtech.com

Sending an email to quickly enable a new m= ailing list subscriber to engage in the conversation.
--000000000000575ae2061a8b6a55--