Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:63431 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 82630 invoked from network); 16 Oct 2012 07:39:55 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 16 Oct 2012 07:39:55 -0000 Authentication-Results: pb1.pair.com smtp.mail=amaury.bouchard@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=amaury.bouchard@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.219.42 as permitted sender) X-PHP-List-Original-Sender: amaury.bouchard@gmail.com X-Host-Fingerprint: 209.85.219.42 mail-oa0-f42.google.com Received: from [209.85.219.42] ([209.85.219.42:43390] helo=mail-oa0-f42.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 96/D0-10021-94F0D705 for ; Tue, 16 Oct 2012 03:39:54 -0400 Received: by mail-oa0-f42.google.com with SMTP id j1so6458194oag.29 for ; Tue, 16 Oct 2012 00:39:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; bh=QljwNxRqduLsKsz2hUlTSY+a52j7JlUM8Djzeozq53E=; b=Qg0DM15/S7WGfvgyINoPAnBI5m8BLOaXTc8EI0V4HCwOJCt29GlLlmOLlunpTqcn9U ZMpznR2IYhNz9LMPjZ9L7pL4k5lbPc7XW65vn/GGUV22oMG1TlJRYXLKR8MJVMgYPOZY nRAna4GrRQVfFNVGEpPmUbuafuHacGxDtdFnYxHVDdgPpHKlFyMj7LGLw2fOkTNNx/az ZahvBi/yI1EtZryfU4VRtri272/++7gPf7W4dLf7tu/fpcofIzAp/wvgAG1mKRu4cNMH aIX1laQoXn58sZfbr+HxH1UhuORnhsrmYt3aG7qHMAKLeEXzvB5vOn9/msRJBYrOZAdB BZIQ== Received: by 10.182.222.72 with SMTP id qk8mr486574obc.99.1350373191159; Tue, 16 Oct 2012 00:39:51 -0700 (PDT) MIME-Version: 1.0 Sender: amaury.bouchard@gmail.com Received: by 10.182.24.169 with HTTP; Tue, 16 Oct 2012 00:39:30 -0700 (PDT) In-Reply-To: <9570D903A3BECE4092E924C2985CE485612B655A@MBX202.domain.local> References: <9570D903A3BECE4092E924C2985CE485612B6466@MBX202.domain.local> <9570D903A3BECE4092E924C2985CE485612B655A@MBX202.domain.local> Date: Tue, 16 Oct 2012 09:39:30 +0200 X-Google-Sender-Auth: 0Qj1rt7zeagn9TimUlA1Pk9R6bk Message-ID: To: Clint Priest Cc: Etienne Kneuss , "internals@lists.php.net" Content-Type: multipart/alternative; boundary=f46d04462c465f906b04cc2842ed Subject: Re: [PHP-DEV] [PHP-DEV [RFC] Property Accessors v1.2 : Interfaces From: amaury@amaury.net (Amaury Bouchard) --f46d04462c465f906b04cc2842ed Content-Type: text/plain; charset=ISO-8859-1 2012/10/15 Clint Priest > Also, your "should be valid" statement implies that you feel properties > and accessors are the same and they are not, internally. When a class > attempts to implement an interface a "function check" is done and since > there is no __getXX() function defined it would fail to implementation > check against an interface. > > I cannot stress enough that properties != accessors in any way except the > syntax in which they are used ($o->xyz) or ($o->xyz = 1), that is their > *only* similarity. I disagree. That's why I said this is a matter of choice. A philosophical choice. I don't see properties and accessors like different things which are accidentally written the same. Accessors are a layer upon properties. It's a magical layer, trying to mimic accessors. It's a bit like aspect-oriented programming: you can add layer but the core is still the same (from a developper point of view, not from the PHP interpreter point of view). See another argument: My proposal for read/write accessibility definition. When I suggested to allow this syntax: "public:private $abc;" some people objected that it's the same than "public $abc { get; private set; }" So, if I understand what you said, for you it's deeply different and comparing them is like comparing apples and oranges. I disagree. I still think my syntax is better (and could be implemented with better performance), but it's normal to compare them, because they (can) offer pretty much the same functionnalities. --f46d04462c465f906b04cc2842ed--