This is where we want to aim for.  It was not practical (for reasons of accidental-complexity management) in preview/1 but those issues have been addressed and it is now practical to get there.

On 1/10/2020 5:04 AM, Tagir Valeev wrote:
Of these options, I like C the most, though I would modify it:
D. The access modifier for explicit overloads to synthetic members
(canonical constructor & accessors) must be the same or more
permissive than an access modifier for the record itself. The absence
of access modifier means 'package-private', as usual for classes. This
would require 'public' for public records, and it's nice because you
will see that it's really a part of the API. On the other hand, this
would reduce noise for inner/local records where you can omit the
access modifier. And still, you can specify public on local records,
so you can easily reduce the record visibility without the need to
modify all the members.

Reply via email to