<div dir="ltr"><div>Hello,</div><div><br></div>I think it's relatively easy to see the benefits when there a fair number of parameters to pass through.<div><br></div><div>In other cases, it looks like you're gaining a very <i>small</i> amount of syntactic conciseness (mostly omitting `return`) and not much else? Is there any actual <i>conceptual</i> simplicity or clarity being gained?</div><div><br></div><div>JEPs don't seem to often include any discussion of what the costs of the feature change. So evaluating benefit vs. cost is not easy. For example, in this case, it becomes harder to understand and explain what a method reference even <i>is</i>. I've been saying "it's just a lambda expression", but either that's gone, or it's now becoming harder to understand and explain what a lambda expression is.</div><div><br></div><div>I think moral-hazard arguments also deserve a bit of thought.</div><div><br></div><div>  public A b(C c, D d, E e, F f) { return g.h(c, d, e, f); }</div><div><br></div><div>If I forgot an "if e is empty, throw" check in here, I'll just insert it. But if it was this:</div><div><br></div><div>  public A b(C c, D d, E e, F f) = g::h;</div><div><br></div><div>I'm probably less likely to do that.</div><div><br></div><div>This is a bit similar to why our style guide requires braces around single-statement if blocks. It's too annoying to deal with inserting them and removing them all the time as conditions change.</div><div><br></div><div>Perhaps these costs don't add up to anything massive, but we should still get a fix on them because if it turns out the benefits <i>also</i> don't add up to something massive then....?</div><div><br></div>I hope this is helpful.<div><br></div><div><br><div class="gmail_quote"><div dir="ltr">On Wed, Sep 19, 2018 at 11:58 AM <<a href="mailto:mark.reinhold@oracle.com">mark.reinhold@oracle.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">2018/9/19 11:42:16 -0700, <a href="mailto:alex.buckley@oracle.com" target="_blank">alex.buckley@oracle.com</a>:<br>
> <a href="https://bugs.openjdk.java.net/browse/JDK-8209434" rel="noreferrer" target="_blank">https://bugs.openjdk.java.net/browse/JDK-8209434</a><br>
<br>
Or, more readably: <a href="http://openjdk.java.net/jeps/8209434" rel="noreferrer" target="_blank">http://openjdk.java.net/jeps/8209434</a><br>
<br>
- Mark<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div style="line-height:1.5em;padding-top:10px;margin-top:10px;color:rgb(85,85,85);font-family:sans-serif"><span style="border-width:2px 0px 0px;border-style:solid;border-color:rgb(213,15,37);padding-top:2px;margin-top:2px">Kevin Bourrillion |</span><span style="border-width:2px 0px 0px;border-style:solid;border-color:rgb(51,105,232);padding-top:2px;margin-top:2px"> Java Librarian |</span><span style="border-width:2px 0px 0px;border-style:solid;border-color:rgb(0,153,57);padding-top:2px;margin-top:2px"> Google, Inc. |</span><span style="border-width:2px 0px 0px;border-style:solid;border-color:rgb(238,178,17);padding-top:2px;margin-top:2px"> <a href="mailto:kevinb@google.com" target="_blank">kevinb@google.com</a></span></div></div></div></div></div></div></div></div></div>