Properties
ІП-24 Олександр Ротань
rotan.olexandr at gmail.com
Wed Apr 24 11:34:31 UTC 2024
So just to clarify: this would be a welcomed feature to add? Also this
would require some modification of records (or adjusting for them). As far
as I know they are part of Valhalla, so I better head there with such
proposal?
ср, 24 апр. 2024 г. в 14:26, Ethan McCue <ethan at mccue.dev>:
> First few minutes of this video.
>
> https://youtu.be/mE4iTvxLTC4?si=V9l0B6opxmkIFi7d
>
> On Wed, Apr 24, 2024, 5:25 AM ІП-24 Олександр Ротань <
> rotan.olexandr at gmail.com> wrote:
>
>> As I see extension methods haven't been accepted as gladly as expected, I
>> decided to put them in stash for now and work on some other features that I
>> think Java lacks for now.
>>
>> I think properties (seamless access to them to be precise) would be a
>> great addition, but having my previous experience, I want to ask were there
>> any discussions about that previously.
>>
>> Also, if there wasn't, or at least properties were not rejected, I have a
>> few questions regarding implementation that I want to know community
>> opinion about.
>> Firstly, I think, having all the codebase populated with get and set
>> accessors, the best way to add such thing would be to treat getX as a get
>> accessor to property X and setX correspondingly.
>> Secondly, unlike C# for example, I think that absence of property
>> accessor should just imply direct access instead of forbidding it (in C#,
>> int a {get;} implies a is effectively immutable)
>> Lastly, for the sake of backward compatibility, I guess if a variable is
>> directly visible in scope, I think that it should be modified directly
>> rather than through an assessor. While that severely damages data
>> integrity, this will not introduce any source code incompatibilities
>> (bytecode incompatibilities isn't a thing here if properties will
>> be desugared in compile-time)
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/compiler-dev/attachments/20240424/780a02e1/attachment.htm>
More information about the compiler-dev
mailing list