根据Scala 中的这个答案 =>
,关键字有两种不同的含义:1表示函数类型:2表示创建 lambda 表达式:。Double => Double
(x: Double): Double => 2*x
这与形式语法有什么关系,即这是否使 Scala 上下文敏感?
我知道大多数语言都不是上下文无关的,但我不确定我所描述的情况是否与此有关。
编辑:
似乎我对上下文相关语法的理解不够好。我知道生产规则应该是什么样子,以及它们的含义(“这个生产只适用于 A 被这些符号包围”),但我只是不确定它们与实际(编程)语言有何关系。
我认为我的困惑源于阅读了诸如“乔姆斯基引入这个术语,因为一个词的含义可能取决于它的上下文”之类的内容,并且我=>
将引用中的“词”这个词联系起来,并且它的这两种用法是两个不同的上下文。
如果答案能解决我的困惑,那就太好了。