groovy-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Guillaume Laforge <glafo...@gmail.com>
Subject Re: [Proposal] GString is implemented eager and treated as normal String since groovy 3.0.0
Date Tue, 11 Sep 2018 09:31:09 GMT
Javascript's  `backquoted ${str}` are immutable.
So changing the embedded variable str won't change the value of the
templated string.
As if we didn't have enough variants of strings ;-) perhaps we should
support that one too :-)

On Tue, Sep 11, 2018 at 11:20 AM Jochen Theodorou <blackdrag@gmx.org> wrote:

>
>
> Am 11.09.2018 um 01:59 schrieb MG:
> > Hi Jochen,
> >
> > could you be more precise about where you see the problem(s) in your
> > example:
> >
> > 1) That Wrapper is not an immutable class, and you can therefore change
> > its state after creation ?
> > 2) That GString $-expressions (outside of "${-> ...}") do not capture
> > the expression, but the result of evaluating the expression (which
> > oftentimes will be an Object referece) ?
> > 3) That GString is not immediately evaluated to its String
> representation ?
> > 4) ... ?
>
> The problem is user expectations. Many do not expect GString to be
> mutable, since they do not use it as a templating solution or something
> compareable. I think we should offer something here. That does not have
> to be GString in syntax at all.
>
> Or we align more with Javascript tempalating and make GString immutable.
>
> bye Jochen
>


-- 
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform

Blog: http://glaforge.appspot.com/
Twitter: @glaforge <http://twitter.com/glaforge>

Mime
View raw message