Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:93327 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 52734 invoked from network); 14 May 2016 10:24:31 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 14 May 2016 10:24:31 -0000 Authentication-Results: pb1.pair.com smtp.mail=francois@php.net; spf=unknown; sender-id=unknown Authentication-Results: pb1.pair.com header.from=francois@php.net; sender-id=unknown Received-SPF: unknown (pb1.pair.com: domain php.net does not designate 212.27.42.2 as permitted sender) X-PHP-List-Original-Sender: francois@php.net X-Host-Fingerprint: 212.27.42.2 smtp2-g21.free.fr Received: from [212.27.42.2] ([212.27.42.2:25322] helo=smtp2-g21.free.fr) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id F4/20-48938-EDCF6375 for ; Sat, 14 May 2016 06:24:31 -0400 Received: from [127.0.0.1] (unknown [82.240.16.115]) (Authenticated sender: flaupretre@free.fr) by smtp2-g21.free.fr (Postfix) with ESMTPSA id C2ED02003AC; Sat, 14 May 2016 10:14:38 +0200 (CEST) To: Sara Golemon References: <452ddb93-1f47-1d0f-4f24-bedbff506b27@gmail.com> <98.61.11104.A1D41375@pb1.pair.com> <7c94ca37-e188-dd2b-a66f-bb63bf03041a@gmail.com> <1463008795.1856219.605250569.74618FC4@webmail.messagingengine.com> <92E7F8A8-0845-48A7-91B1-9554C5F66C9D@zend.com> <879feadf-c04e-c0de-826b-110b3eb4e22f@php.net> Cc: Zeev Suraski , Quim Calpe , "davey@php.net" , Larry Garfield , "internals@lists.php.net" Message-ID: <4f646787-be79-6622-4d61-d704dabb3625@php.net> Date: Sat, 14 May 2016 12:24:15 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Antivirus: avast! (VPS 160513-1, 13/05/2016), Outbound message X-Antivirus-Status: Clean Subject: Re: [PHP-DEV] [RFC] Pipe Operator From: francois@php.net (=?UTF-8?Q?Fran=c3=a7ois_Laupretre?=) Le 13/05/2016 à 20:16, Sara Golemon a écrit : > Just to verify, you're suggesting an end-state something like this? > > $ret = array(1,2,3) > |> array_map(function($x) { return $x * 2; }) // lhs implicitly > passed as second arg > |> array_sum(); // implicitly passed as only arg (first position) > // $ret === int(12) Right. And also : array(1,2,3) |> array_map(function($x) { return $x * 2; }) |> $intermediate_var |> array_sum() |> $ret; Talking about arrays, I am also thinking of a '[]>' operator (name may vary). This would take an array as input, and output another array, where every value would have been run through the function. The keys would be preserved. Example : array('a','b','key' => 'c') []> ord(); // produces [ 97, 98, 'key' => 99 ] Regards François