Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:93046 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 18727 invoked from network); 3 May 2016 18:45:58 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 3 May 2016 18:45:58 -0000 Authentication-Results: pb1.pair.com smtp.mail=php@golemon.com; spf=softfail; sender-id=softfail Authentication-Results: pb1.pair.com header.from=php@golemon.com; sender-id=softfail Received-SPF: softfail (pb1.pair.com: domain golemon.com does not designate 209.85.215.48 as permitted sender) X-PHP-List-Original-Sender: php@golemon.com X-Host-Fingerprint: 209.85.215.48 mail-lf0-f48.google.com Received: from [209.85.215.48] ([209.85.215.48:35179] helo=mail-lf0-f48.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 2E/56-03860-4E1F8275 for ; Tue, 03 May 2016 14:45:56 -0400 Received: by mail-lf0-f48.google.com with SMTP id j8so32903820lfd.2 for ; Tue, 03 May 2016 11:45:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=golemon-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-transfer-encoding; bh=6pTXm/8Fif6D4qAu+vFMVRqrhJUKGIs4qF8mApZCkdk=; b=hBW/e9spVdKPVVHw3sGpXXIZ67iOAipYX7nWnBNj1fPlfPHQ7x6ie7qV6l+Gvuw9Ue TKvpDDBe9mHl0dYPSSBddcZcjXdHnsasWYz3+oW//VwtcDj4bX3B1eNrNJCbA3Er485u csKbhm4sZEiPqIAsB24CImjmgaxnUDP3NP+S5t7m2ONtoMwzaHXqFNWGTPmFYHLK6hy0 e9APKdfXE1MUlLXBIGlBLBJR6dRUZjnKtUAaFOrEese4ENgAclPqbhp7YgS3L7S9d+YW /8T3v1wMNH2u/Btl4BY6XUdRO2IF3W/+Ll5nzkDy91ZVj7Y1Md1PVuKgKZ3gNELgg7ky dvBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-transfer-encoding; bh=6pTXm/8Fif6D4qAu+vFMVRqrhJUKGIs4qF8mApZCkdk=; b=JjXmHKGiCtoz62FOgklHLzMzTTs8hO5wDcB3TE1FxYHIonW6Nm1zF+NQpESmem/cNa ppkAYd/CBaPE4H/V7Nkf0jsvBSjygklsX/s2Iclx8yu0Gs8lZl8o0CkK2IlrGYetLMca UVpHvSZupTT3wHnKP9kN61sEHdXK/t2alUS6siNurCm6FsbSXHn7uOPHX9hESmUdgXZf R0nEXK5cROUzKV/LZOnhGiYx8i3O8qOGinHsc4hS6vE3w/TypCSrM8dXaz8hMQ/TvrVc OvcxS9Wt7pTqzM1d4azjAEWMHqqvUc+ugyCQxH390gccMrWhQzPsLt1RG1WWP4iCykRC pxIg== X-Gm-Message-State: AOPr4FVG5EEju3DkYXY2n+iXgAOw7bb5o8zqwxTBKppnPlHGtfdVs2n8Kdz3n96ExSAZRgRjoP5PuiXVxQb+Ag== MIME-Version: 1.0 X-Received: by 10.112.188.134 with SMTP id ga6mr1923837lbc.77.1462301153639; Tue, 03 May 2016 11:45:53 -0700 (PDT) Sender: php@golemon.com Received: by 10.112.19.72 with HTTP; Tue, 3 May 2016 11:45:53 -0700 (PDT) X-Originating-IP: [107.198.91.68] In-Reply-To: <39071a01-a42c-0952-b3a8-b4769c79b56b@fleshgrinder.com> References: <4fc01507-3d07-2309-a4e4-4cad7325249b@gmail.com> <39071a01-a42c-0952-b3a8-b4769c79b56b@fleshgrinder.com> Date: Tue, 3 May 2016 11:45:53 -0700 X-Google-Sender-Auth: scq87WFMNNwH99isrhCG5Qt_RT0 Message-ID: To: PHP internals Cc: Terry Cullen , Stephen Coakley Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] [RFC] Pipe Operator From: pollita@php.net (Sara Golemon) On Tue, May 3, 2016 at 11:36 AM, Fleshgrinder wrote: > On 5/3/2016 8:12 PM, Sara Golemon wrote: >> The difference with scalar objects is: >> A) We need to agree on what methods these objects are going to have. >> ((And we won't agree)) >> > > The nice thing here is that we could start with the things that we agree > on and develop it from there further. > Which is precisely why we'll get paralyzed. > On 5/3/2016 8:12 PM, Sara Golemon wrote: >> We could maybe hedge our bets with a ->invoke(Callable) method that >> pushes the value into an arbitrary closure, but that's just adding >> complexity to... avoid adding complexity... o.O >> > > That would be pure evil. > Agreed. It's an attempt to force a square peg into a round hole. But focusing on OOP chaining will always leave this gap. > The pipe operator is also just a work around for poorly designed > libraries in this case and yields more poorly designed libraries. > Pretending that poorly designed libraries exist is na=C3=AEve. PHP is dominated by poorly designed software but it manages to work because it responds with practicality. It's practical to provide a functional version of object method chaining. -Sara