2

一种语言是否必须满足任何条件才能为该语言编写元循环评估器?我可以为 BASIC 或 Python 写一个吗?

4

2 回答 2

3

引用Reg Braithwaite 的话:

自我解释器和元循环解释器之间的区别在于后者根据特性本身重述语言特性,而不是实际实现它们。(换句话说,循环定义;因此得名)。它们依赖于它们的宿主环境来赋予特征意义。

鉴于此,允许为其编写元循环解释器的语言的关键特征之一是同音性,即程序的主要表示是语言本身的原始数据结构。Lisp 展示了这一点,因为程序本身被表示为列表。

于 2009-04-04T13:06:42.720 回答
0

可以为任何图灵完备的语言编写它,但是,您的里程可能会有所不同。

对于 Python,它已经完成(PyPy)。可以在Wikipedia 文章中找到已完成的语言列表。

于 2009-04-04T13:02:24.243 回答