Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:89968 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 72271 invoked from network); 3 Jan 2016 02:41:52 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 3 Jan 2016 02:41:52 -0000 Authentication-Results: pb1.pair.com smtp.mail=me@daveyshafik.com; spf=permerror; sender-id=unknown Authentication-Results: pb1.pair.com header.from=me@daveyshafik.com; sender-id=unknown Received-SPF: error (pb1.pair.com: domain daveyshafik.com from 74.125.82.49 cause and error) X-PHP-List-Original-Sender: me@daveyshafik.com X-Host-Fingerprint: 74.125.82.49 mail-wm0-f49.google.com Received: from [74.125.82.49] ([74.125.82.49:34943] helo=mail-wm0-f49.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 56/62-33667-E6A88865 for ; Sat, 02 Jan 2016 21:41:50 -0500 Received: by mail-wm0-f49.google.com with SMTP id f206so107884810wmf.0 for ; Sat, 02 Jan 2016 18:41:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=daveyshafik-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=EIRHR3DiA62RSDGGYvoBQ6Tg0ATFlHC4J8jY6I1W828=; b=T3ZtEXlk0kHmQcoZ4OumlZUr2uB918XSGCs4XIxz0V5wTD1bi2xmSXllDJj242zti8 61H5Ns2MQGc4HBVgm5x+GomxSSnBII4xIrEHWMQBMdJvt5AlKVC7c38bXkySMxOs9zIP Wltie/pmXm5jveqpFnoIjxUkkKaEF43x13u+PvOCVurndMIpK+8JVj9jdBY1H9hTpnb/ aZOk4Msq2w0UAbiIOOGr39ln2lNcBIGR4BFCLYVnj667kVQJsUZKoO2n2NAgnBvfZcqV e7iSrPLHgbH9tq0+3WZL6W1Zatcw2kVP4+6N5XzMKWsPYFd4Qn+w2qinH8LgtnopWmo3 YiUw== 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-type; bh=EIRHR3DiA62RSDGGYvoBQ6Tg0ATFlHC4J8jY6I1W828=; b=Fx1FmCPJZiaKAOe7aGYFxdZgKG3Wt3eZgxRDIzXvtoiD4VYIzQZIo9OgMT68/v4/74 0m/zPSMYn3R47HnMt4waaxo0YrgEEQkNjVft5VNZTUsB7NM3Baqy8RHxNmJvCVV1FYJO datyIobqvEFXTrE55gtHaub0TXndIG86vQYrCdHwZlD/O5CSg+fjZXeJuVePYI+9RUju Yf93w/kquRTmiT7l7/Euy/pcFqMP0ZzgspCPZAYklU7HqyuF88BLJoEeNvmQ0RMsid37 XkXuQvFwobkohvpZTqwZGHmLjNi59LCJIZjigqzMmOfA9xvs2+hvaCQ7y7OWCShfSxip IpxA== X-Gm-Message-State: ALoCoQkHYBHS/gfFWPv1l3UZAxWigTUvK+8BH+TAC2N/sN5Nqa3WwcXDobRq2/OyRCaGylYvdjWAFchAw7uVy0rPBdsHH7M4GilYo2u5xmLeMdx97z2erh0= MIME-Version: 1.0 X-Received: by 10.28.142.8 with SMTP id q8mr57365385wmd.47.1451788907496; Sat, 02 Jan 2016 18:41:47 -0800 (PST) Sender: me@daveyshafik.com Received: by 10.194.83.198 with HTTP; Sat, 2 Jan 2016 18:41:47 -0800 (PST) In-Reply-To: References: Date: Sun, 3 Jan 2016 02:41:47 +0000 X-Google-Sender-Auth: JJgmZ9biBYYAK5MfjxIy8P4o3-I Message-ID: To: Sara Golemon Cc: PHP internals , patriciotarantino@gmail.com Content-Type: multipart/alternative; boundary=001a1144278a1ede5c052864f215 Subject: Re: [PHP-DEV] RFC Operator Overloading in Userspace From: davey@php.net (Davey Shafik) --001a1144278a1ede5c052864f215 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable I would love to see all of the is_* methods implemented in the initial implementation, these are far more useful to me than the basic math operators. As for interfaces, I'm generally pro-interfaces as programmatic documentation if nothing else =E2=80=94 however, none of the magic methods = have implemented this except for the JsonSerializable stuff. But, I'm all for moving the language forward on new features only and not getting caught in the "legacy consistency" trap again. We can maybe add optional interfaces for other magic methods, and then make them required in the next major. I've been hoping for operator overloading in userland since the GMP changes and welcome this proposal in general. Thanks Patricio and Sara both! :) On Sun, Jan 3, 2016 at 2:14 AM, Sara Golemon wrote: > Patricio Tarantino has asked me to help him propose Operator > Overloading in PHP 7.1 (based in part on my operator extension in > PECL). I think we can expose this to usespace as magic methods with > very little overhead (the runtime check and dispatch is already there, > after all). > > I do think that the "Future Expansion" section bears following through > with as well, but the basic set of methods already hooked for GMP > would be a nice start. > > https://wiki.php.net/rfc/operator-overloading > > -Sara > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > --001a1144278a1ede5c052864f215--