Update on String Templates (JEP 459)

Jim Laskey james.laskey at oracle.com
Mon Mar 11 20:47:10 UTC 2024


String plus isn’t needed. Just as templates remove the need for string plus, the combining of string templates and strings can be done with nested embedded expressions.
📱

> On Mar 11, 2024, at 5:25 PM, Alex Buckley <alex.buckley at oracle.com> wrote:
> 
> On 3/11/2024 10:36 AM, Brian Goetz wrote:
>> Overall, though, I am not so enthused about creating yet another new lexical mechanism for having different kinds of stringy things.
> All strings -- not just string literals, and not just constant expressions of type String -- can be composed with +. Is there an equivalent composition operator for string templates? (That is, all values of type StringTemplate, not just template literals.)
> 
> I ask because the more lexical similarity between a template literal and a string literal, the more I think people will try to use + with two template literals, or with one template literal and one string literal. AIUI the result will be a surprise:
> 
> String s = "Hello" + "\{x}";
>  // Second operand to + undergoes string conversion a.k.a. toString()
> print(s);  // Hello0x12345678
> 
> Alex


More information about the amber-spec-experts mailing list