2

ML(及其变体,例如 SML)如何成为元语言。ML 描述的对象语言是什么?仅仅是因为函数被认为是值,因此代码与数据的处理方式相同吗?

4

2 回答 2

2

它实际上来自其原始用例。

ML 被设计为一种编写定理证明器的语言。在这种情况下,ML 是您用来描述理论的编程语言。它是理论之上的语言:元语言。或者,正如米尔纳在原始论文中所说:

我们还讨论将这些结果扩展到更丰富的语言;基于 W 的类型检查算法实际上已经实现并正在运行,用于爱丁堡 LCF 系统中的元语言 ML。

这个名字卡住了,所以现在这样称呼它,即使它没有描述一般意义上的对象语言。

于 2018-05-23T15:26:44.577 回答
1

ML 最初是 Milner 在 70 年代开发的 LCF 定理证明器的元语言。您可以使用它在该系统中定义和执行证明,例如,通过在 ML 中编写证明策略。另见维基百科文章

于 2018-05-23T15:26:21.833 回答