令我惊讶的是,这并不起作用 -
implicit class LambdaContext(val sc: StringContext) extends AnyVal {
def λ(args: Any*) = args
}
scala> λ"λx.x"
<console>:1: error: ';' expected but string literal found.
λ"λx.x"
虽然这是一个有效的方法名:
scala> new LambdaContext(new StringContext("λx.x")).λ()
res1: Seq[Any] = List()
不确定是一个漏洞还是简单的限制。