Specs update

Tagir Valeev amaembo at gmail.com
Sat Jan 9 11:31:36 UTC 2021


Hello, Gavin!

Thank you for spec update. A minor nitpick regarding pattern-matching spec:
http://cr.openjdk.java.net/~gbierman/jep394/jep394-20210108/specs/patterns-instanceof-jls.html#jls-14.20.3

As resource variable is now a local variable declaration, probably,
the following statement is redundant and should be removed?

> It is a compile-time error if final appears more than once as a modifier for each variable declared in a resource specification.

With best regards,
Tagir Valeev.

On Tue, Dec 22, 2020 at 6:47 PM Gavin Bierman <gavin.bierman at oracle.com> wrote:
>
> As we rampdown to JDK 16, the three spec bundles have been polished up a little. I’ve updated them all:
>
> * Records: http://cr.openjdk.java.net/~gbierman/jep395/latest/
> * Pattern matching for instanceof: http://cr.openjdk.java.net/~gbierman/jep394/latest/
> * Sealed Classes: http://cr.openjdk.java.net/~gbierman/jep397/latest/
>
> Nearly all of the changes are just polishing up the language.  However, the pattern matching spec did have a small, significant change: Given that we had already lifted the restriction that pattern variables were always final, we have now decided to allow pattern variables to support a `final` modifier. For example:
>
> if (e instanceof final String s) {
>   // s is in scope and final here
>   ...
> }
>
> You’ll see also in the pattern matching spec that we have taken the opportunity to tidy up the treatment of local variables in various places; this is old technical debt that we are paying down, but given that pattern variables are a subset of local variables we had an opportunity to finally do this.
>
> As always, further polishing may apply as they get inserted into the actual specs.
>
> If you have any comments please let me know.
>
> Wishing you all Happy Holidays and a better 2021!
>
> Gavin
>


More information about the amber-spec-experts mailing list