在JavaScript和方案中使用Backticks作为句法糖
#javascript #scheme #syntax

ecmascript 6介绍了template literals的概念,以提供一种在JavaScript中建立字符串的方便方法。

例如:

> let h = "Hello", w = "World";
> `${h} ${w}!
  ${h} ${w} from line 2`

"Hello World!
Hello World from line 2"

这让人想起在方案中使用Backticks使用quasiquotation构建列表:

> (let ((h 'hello)
      (w 'world))
  `(,h ,w !))

(hello world !)

也许不是一个巧合,最初提出时,模板文字被称为quasi-literals

该方案使用语法糖扩展了eCmascript语法,以允许图书馆提供轻松产生,查询和操纵其他语言的DSL,这些语言免疫或抗XSS,SQL注射等注射攻击,等等。

尤其是因为没有其他commonly-used languages使用Backticks进行字符串插值。

无论如何,认为这是关于JavaScript语言演变的有趣观察。