JEP proposed to target JDK 11: 323: Local-Variable Syntax for Lambda Parameters (original) (raw)
Martijn Verburg martijnverburg at gmail.com
Sun Jan 28 21:50:42 UTC 2018
- Previous message: JEP proposed to target JDK 11: 323: Local-Variable Syntax for Lambda Parameters
- Next message: JEP proposed to target JDK 11: 323: Local-Variable Syntax for Lambda Parameters
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi Zheka,
(I'm going to try to reply to everyone since I started this discussion :-))
Whilst I'm not sure about the practically of final var
in this situation
I can get behind the annotation support, thanks for pointing these out!
Cheers, Martijn
On 26 January 2018 at 22:59, Zheka Kozlov <orionllmain at gmail.com> wrote:
The motivation is to allow
final
and annotations on lambda parameters:(final var x) → x + 1; (@Nonnull var x) → x + 1; This is impossible to write with an implicitly typed lambda: (final x) → x + 1; // Illegal (@Nonnull x) → x + 1; // Illegal
2018-01-26 15:30 GMT+07:00 Martijn Verburg <martijnverburg at gmail.com>: Hi all,
I'm struggling to understand the motivation for this JEP in terms of it adding improved understanding or readability of source code (as the implicit case is already covered today). I also suspect the illegal use uses (extract below) will likely confuse and frustrate day to day developer's who don't understand the underlying type inference system and lead to some heavily upvoted SO Q's. I liken this type of frustration seen in developers not understanding generics in full and coming undone in corner cases where they expect the element of 'least surprise'. ------ The following examples are illegal: (var x, y) -> x + y // Cannot mix var and "no var" in implicitly typed lambda expression (var x, int y) -> x + y // Cannot mix var and manifest types in explicitly typed lambda expression
------- I'm not sure I've explained myself very eloquently here, hope this has made some sense. Cheers, Martijn On 26 January 2018 at 08:40, <mark.reinhold at oracle.com> wrote: > The following JEP is proposed to target JDK 11: > > 323: Local-Variable Syntax for Lambda Parameters > http://openjdk.java.net/jeps/323 > > Feedback on this proposal is more than welcome, as are reasoned > objections. If no such objections are raised by 23:00 UTC on Thursday, > 1 February, or if they're raised and then satisfactorily answered, then > per the JEP 2.0 process proposal [1] I'll target this JEP to JDK 11. > > - Mark > > > [1] http://cr.openjdk.java.net/~mr/jep/jep-2.0-02.html >
- Previous message: JEP proposed to target JDK 11: 323: Local-Variable Syntax for Lambda Parameters
- Next message: JEP proposed to target JDK 11: 323: Local-Variable Syntax for Lambda Parameters
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]