<html><body><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; color: #000000"><div><br></div><div><br></div><hr id="zwchr" data-marker="__DIVIDER__"><div data-marker="__HEADERS__"><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><b>From: </b>"Duncan MacGregor" <duncan.macgregor@servicenow.com><br><b>To: </b>"amber-dev" <amber-dev@openjdk.org><br><b>Sent: </b>Monday, May 15, 2023 1:03:37 PM<br><b>Subject: </b>Re: JEP 430: String Templates Mandatory TemplateProcessor<br></blockquote></div><div><style><!--
@font-face
{font-family:Helvetica;
panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
h3
{mso-style-priority:9;
mso-style-link:"Heading 3 Char";
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:13.5pt;
font-family:"Calibri",sans-serif;}
span.Heading3Char
{mso-style-name:"Heading 3 Char";
mso-style-priority:9;
mso-style-link:"Heading 3";
font-family:"Calibri Light";
color:#1F3763;}
span.EmailStyle21
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;
mso-ligatures:none;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:99.25pt 3.0cm 3.0cm 3.0cm;}
div.WordSection1
{page:WordSection1;}
--></style></div><div data-marker="__QUOTED_TEXT__"><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;">
<div class="WordSection1">
<p class="MsoNormal"><span style="mso-fareast-language:EN-US">I don’t understand the dislike for \{ either. Ruby uses #{, Swift uses \(, Python uses $, or { depending on whether you’re using f-strings, and so on. I use all of these at least semi-regularly and
none of these is particularly ugly and all are abundantly clear if your IDE or editor supports correct syntax highlighting. I wouldn’t mind discussion of the syntax if it were more nuanced than “\{}
</span><span style="font-family:"Apple Color Emoji";mso-fareast-language:EN-US">冷</span><span style="mso-fareast-language:EN-US">” (actual reddit comment), but I think until we see better arguments than, “Kotlin does it this way,” I’m not sure it’s valuable.</span></p></div></blockquote><div><br></div><div>I've recently discussed with someone that choose to use ${} as a syntax for his template library.<br data-mce-bogus="1"></div><div>The given reason is that '$' is seen as a pseudo character, so it works well in strings that uses the usual delimiters like :, ;, / or \ because it visually keeps the structure.</div><div><br></div><div>Now, Brian, the spec lead, said that the escape sequence is \{...} so it is.</div><div>Let's wait and see at least until 21 is released, at that points more people will use the feature, so the feedback will be more based on actual users.<br data-mce-bogus="1"></div><div><br data-mce-bogus="1"></div><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><div class="WordSection1">
<p class="MsoNormal"><span style="mso-fareast-language:EN-US">Duncan.</span></p></div></blockquote><div>Rémi<br data-mce-bogus="1"></div><div><br data-mce-bogus="1"></div><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><div class="WordSection1">
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">amber-dev <amber-dev-retn@openjdk.org> on behalf of Jim Laskey <james.laskey@oracle.com><br><b>Date: </b>Saturday, 13 May 2023 at 16:19<br><b>To: </b>interlink.sg7@gmail.com <interlink.sg7@gmail.com><br><b>Cc: </b>amber-dev@openjdk.org <amber-dev@openjdk.org><br><b>Subject: </b>Re: JEP 430: String Templates Mandatory TemplateProcessor</span></p>
</div>
<div>
<h3><strong><span style="font-family:Helvetica;color:black;background:yellow">[External Email]</span></strong></h3>
<div class="MsoNormal" style="text-align:center" align="center">
<hr width="94%" size="0" align="center">
</div>
</div>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">Note that there is a very strong backlash against the backslash (play on words intended) in the Java community.</span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"> </p>
</div>
<p class="MsoNormal">Depends on who you hang out with. I know the Swift crowd seem content with \(. Not sure I see the point of making all languages the same. </p>
</div>
<div>
<p class="MsoNormal"> </p>
</div>
<div>
<p class="MsoNormal">Like any new language feature, you do get use to \{. Once IDEs integrate, string templates will become second nature. </p>
</div>
<div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"> </p>
</div>
</blockquote>
</div>
</div><br></blockquote></div></div></body></html>