+1 to Stephen and Remi. I personally see no reason to hurry up with
this API: unlike trimming/indenting methods this one doesn't look
crucial for raw string literals. I don't see that this method blocks
anything else.

> For info, AWS SDK v2 has chosen applyMutation() for a similar concept:

Unfortunately this name serves well only for mutable objects, like
builders. For String it looks confusing.

With best regards,
Tagir Valeev.
On Sat, Dec 1, 2018 at 5:27 AM Remi Forax <fo...@univ-mlv.fr> wrote:
>
> I fully agree with Stephen.
>
> Rémi
>
> ----- Mail original -----
> > De: "Stephen Colebourne" <scolebou...@joda.org>
> > À: "core-libs-dev" <core-libs-dev@openjdk.java.net>
> > Envoyé: Vendredi 30 Novembre 2018 12:06:23
> > Objet: Re: RFR - JDK-8203442 String::transform (Code Review)
>
> > I see from Twitter (!!!) that this has been pushed. This appears to have
> > happened without this thread coming to a clear conclusion, particularly wrt
> > criticism of transform() as a suitable method name in the broader context.
> >
> > I also do not think that the code review was completed correctly and in
> > public, which I find concerning.
> >
> > The two public threads are:
> > http://mail.openjdk.java.net/pipermail/core-libs-dev/2018-November/056574.html
> > http://mail.openjdk.java.net/pipermail/core-libs-dev/2018-November/056592.html
> >
> > The last webrev had the name map() and no further webrev was published that
> > I can see. I can see no explicit public approvals of the change from
> > reviewers. And plenty of concern about the method name, especially map()
> > but also transform().
> >
> > While I'm well aware of the danger of public bikeshedding, I also think
> > that adding methods to `String` deserves more care than this has been
> > shown. In my view the change should be reverted, and retargetted to Java 13
> > to allow for a proper conclusion to the discussion.
> >
> > For info, AWS SDK v2 has chosen applyMutation() for a similar concept:
> > https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/utils/builder/SdkBuilder.html#applyMutation-java.util.function.Consumer-
> >
> > Stephen
> >
> >
> > On Wed, 14 Nov 2018, 14:18 Stephen Colebourne <scolebou...@joda.org wrote:
> >
> >> On Tue, 13 Nov 2018 at 15:44, Brian Goetz <brian.go...@oracle.com> wrote:
> >> > Yes, we know :)  But we don’t have any current plans to do that, nor
> >> use-site extension methods, nor does it seem likely to come to the top of
> >> the language priority list very soon.  So its not a choice between |> and
> >> .transform(); it’s a choice between transform() and nothing.  Picking
> >> transform() seems pretty good here.
> >> >
> >> > Stephen raised the issue of a “broader context”; indeed, the intention
> >> of adding a transform() method here was that it would be feasible to add to
> >> other types for which it was suitable.  String is an obvious candidate for
> >> “do it first”, but this is within a broader context.
> >>
> >> I'd be more comforted if there was a commitment to add the method to
> >> Stream and Optional in Java 12 or 13.
> >>
> >> I also agree with Remi that `transform()` is a poor name for Stream,
> >> and thus it is a poor name for String. I doubt there is a perfect
> >> name, process() or apply() seem like good candidates.
> >>
> >> Stephen

Reply via email to