<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><blockquote type="cite" class="">I think replacing with `let foo` and scopes lengthens, emphasizes, and draws attention to a very minor detail, de-emphaizing and obscuring the main idea of the function.</blockquote><div class=""><br class=""></div>This.<div class=""><br class=""><div><blockquote type="cite" class=""><div class="">How about:</div><div class=""><div class=""><br class="">let v = if condition then “A" else “B"<br class=""></div></div></blockquote><div><br class=""></div><div>I don't think introducing a separate "then" keyword is a good idea, two subtly different kinds of IFs would be confusing.</div><div><br class=""></div>I guess you meant:</div><div><br class=""></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class=""><div>let v = if condition { "A" } else { "B" }</div></div></blockquote><div class=""><div><br class=""></div><div>That's acceptable to me, although might not be any more readable, and feels slightly inferior to:</div><div><br class=""></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class=""><div>let v = (condition ? "A" : "B")</div></div></blockquote><div class=""><div><br class=""></div><div>A.</div></div><div><br class=""></div></body></html>