EnumeratedStream
ІП-24 Олександр Ротань
rotan.olexandr at gmail.com
Sun Apr 21 15:45:56 UTC 2024
To clear things up, Issues are related to handling using type erasure, not
class generating approach.
вс, 21 апр. 2024 г. в 18:45, ІП-24 Олександр Ротань <
rotan.olexandr at gmail.com>:
> To clear thing up, Issues are related to handling using type erasure, not
> class generating approach.
>
> вс, 21 апр. 2024 г. в 16:48, ІП-24 Олександр Ротань <
> rotan.olexandr at gmail.com>:
>
>> I am not really familiar with goals and milestones of Valhalla project,
>> but what I meant by simplification is that there would not be any more need
>> to convert to promotove streams explicitly as Stream<primitive> would be a
>> thing. If that's what Valhalla is working on, then this would be just
>> great. Performance concerns regarding wrappers are also valid , but here
>> I am talking about implementation complexity.
>>
>> If going little off topic, compiling many classes to achieve generic
>> reification in fact looks odd, but it in fact provides best developer
>> experience, Converting primitive arrays to collections is one of the
>> examples of major problems issues with it, along with some methods of
>> Arrays class (like sort, if I am not mistaken), just don't work with
>> primitives.Approach that is used in C#, while has its downsides, provides
>> much better user experience. However, what I am looking into right now is
>> some hybrid form of generic handling, where generic maybe be reified on
>> demand of developer (or implicitly if primitive is used). I am working on
>> some prototypes at the moment
>>
>> вс, 21 апр. 2024 г. в 16:31, - <liangchenblue at gmail.com>:
>>
>>> On Sun, Apr 21, 2024 at 5:49 AM ІП-24 Олександр Ротань <
>>> rotan.olexandr at gmail.com> wrote:
>>>
>>>> I have heard your proposal. Your approach indeed for sure has its
>>>> advantages.
>>>>
>>>> One thing I don't like referring to is Valhalla. It's not even a
>>>> preview and no one really knows when it will be, relying on it when
>>>> designing API now would be strange to say the least.
>>>>
>>> Valhalla's value classes are actually quite ready; the compatibility and
>>> the type system are quite fleshed out in the recent iterations, and the
>>> prototypes are already functional.
>>>
>>>>
>>>> One possible thing that could dramatically simplify implementation of
>>>> my approach is introduction of generic reification, which would allow
>>>> primitives as type params. I am currently studying the working of javac and
>>>> possible implementation of this is one of the topics in my research.
>>>> However, let's stick to what we have in jdk right now from now on.
>>>>
>>> Generic reification is part of project Valhalla too, in that it allows
>>> wrapper classes in generics to have the same performance as the primitives
>>> with generic specialization. Compiling many classes to achieve generic
>>> reification is an alternative, but I don't think it's feasible.
>>>
>>>>
>>>> I would like to hear opinions of other people regarding the design of
>>>> such API, especially David and Remi, since, as I understand, that's not the
>>>> first time they witness a discussion like this, so maybe they have
>>>> something to tell here.
>>>>
>>> Unfortunately you will have to wait. Most JDK engineers are employees
>>> who work on weekdays; only a few are enthusiasts. I think we may get more
>>> discussion traffic on Monday.
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/core-libs-dev/attachments/20240421/ae542602/attachment.htm>
More information about the core-libs-dev
mailing list