Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:78109 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 94525 invoked from network); 16 Oct 2014 09:55:28 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 16 Oct 2014 09:55:28 -0000 Authentication-Results: pb1.pair.com smtp.mail=nikita.ppv@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=nikita.ppv@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.215.50 as permitted sender) X-PHP-List-Original-Sender: nikita.ppv@gmail.com X-Host-Fingerprint: 209.85.215.50 mail-la0-f50.google.com Received: from [209.85.215.50] ([209.85.215.50:38651] helo=mail-la0-f50.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 38/F1-11594-F069F345 for ; Thu, 16 Oct 2014 05:55:28 -0400 Received: by mail-la0-f50.google.com with SMTP id s18so2540317lam.37 for ; Thu, 16 Oct 2014 02:55:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=iqBwvucdODnAVqbsfOq3jhHNakodb0vLS86SgKVM7ks=; b=LKq2FD+J/kTiOO3eig6qZc+rCdK0ROHML9JUNjh8XCuM4exuU+dNlnooAFc1YzO274 OGN3IB2u5gMaLTXAVF3HLBqQqMAaXr0cCZSfIxuRnyKxazu35edYQpGgBzDAWZkLPHc6 aOe/aLmXnG0aU7A6DOUT7Sy1TbJzvsB5qmb2steDG2NQyLfezDJaT/UwchG/mpsExUrE 5QBztlWJMm+Pq9d/1+kKLjzLSQsbiAzjoMR8lEdjjOBjjXTn47oxwT4B4eHt0JYaGzm5 JtXeOuN+Zm1jkCuA/h+3a3FxHYNuq6mq0XYqQe2EMcKpDNcZVWS5bMlfGHMJYD7fmwiM LbaA== MIME-Version: 1.0 X-Received: by 10.152.27.134 with SMTP id t6mr281807lag.17.1413453324437; Thu, 16 Oct 2014 02:55:24 -0700 (PDT) Received: by 10.25.139.70 with HTTP; Thu, 16 Oct 2014 02:55:24 -0700 (PDT) In-Reply-To: References: Date: Thu, 16 Oct 2014 11:55:24 +0200 Message-ID: To: Levi Morrison Cc: internals Content-Type: multipart/alternative; boundary=089e0160bf684f4f630505873fd3 Subject: Re: [PHP-DEV] RFC: Return Types Update From: nikita.ppv@gmail.com (Nikita Popov) --089e0160bf684f4f630505873fd3 Content-Type: text/plain; charset=UTF-8 On Thu, Oct 16, 2014 at 6:39 AM, Levi Morrison wrote: > Dear Internals, > > I finally have a working implementation for return types RFC[1] built > on top of master. There are a few notes in the PR[2] about the > implementation. I invite you all to review the PR and provide > feedback. > > This means that I will soon move the return types RFC to voting phase. > If you have not yet had time to review the RFC recently I invite you > to do so now. > > The RFC has been slightly altered since the last discussion: > - The RFC now targets PHP 7 (previously PHP 5.7). > - There is a new section about disallowing return types on certain > methods[4]. > - The design and accompanying section of reflection[3] has been > rewritten entirely. > > Regardless of the result of the RFC, I want to thank the many people > who have been helpful to me as I have learned php-src and iterated > over this RFC. > +1 What I like about this RFC: * It only covers return types and nothing else (no nullable types, no scalar types, etc), thus avoiding unnecessary controversy. * It uses postfix type notation, which is great for `grep`, is compatible with Hack and avoids weird syntax with anonymous functions (and also with method generics, should they be introduced in the future). * Sticking with covariant return types, even though it was tricky to implement. Nikita --089e0160bf684f4f630505873fd3--