自循环解释器

✍ dations ◷ 2025-10-23 10:59:32 #计算机编程,计算机科学

自循环解释器(英语:Meta-circular evaluator)是元解释器(Metainterpreter,或Self-interpreter)的一种。自循环解释器不仅是在解释型语言中写成(如Scheme的自循环解释器是在Scheme中写成),而且通过底层语言的功能来实现解释型语言的功能。因此,自循环解释器不需担心如何具体实现任何功能,而只需处理语言读入与解释,所以尤其适合作为教育用途。自循环解释器一般在同像(即程序与数据为同一格式,如Lisp)的语言中出现。

自循环解释器最早出现于约翰·麦卡锡的Lisp 1.5版定义,其中麦卡锡以Lisp语言的功能来描述Lisp的解释规则。

著名计算机科学教科书《计算机程序的构造和解释》详细研究了一个Scheme语言的自循环解释器。此书中的解释器包含两个主要元素:

这两个元素互相调用,并最终将整个程序转换为其取值。

例如以下简单的Scheme表示式(假设square是一个内置函数,其返回值为参数的平方):

(+ (square 2) (square 3))

其解释过程如下:

相关

  • 散囊菌纲散囊菌目(学名:Eurotiomycetes)是子囊菌门盘菌亚门之下的一个纲。散囊菌目原来分为以下三个分类:医学导航 · 真菌病真菌 · 分类疾病药物(抗真菌药)
  • 朝廷朝廷指中国、日本等汉字文化圈国家,在皇帝制度下对宫廷、中央政府等统治机构的总称。“朝”:中文所谓的“朝”字具有代表早晨,有今日(一昼夜)含义,在政治上延伸为今日治天下者,引用
  • 清朝的外交清朝初期,清朝政府与俄罗斯沙皇国政府签订了《尼布楚条约》,该条约中国称为平等条约,俄罗斯(含苏联时期)称为不平等条约(俄罗斯人认为《瑷珲条约》中收回了被中国人强占的失地)。有
  • 粮农组织联合国粮食及农业组织(法语:L'Organisation des Nations Unies pour l'Alimentation et l'Agriculture,缩写为ONUAA; 英语:Food and Agriculture Organization of the United Na
  • 加拿大交通加拿大是一已发展国家,其经济包括了广大国土内的原料开采与出口。因此,加拿大的交通运输系统拥有总长超过140万公里的公路、10座主要的国际机场、300座小型机场、总长72,093公
  • 黄瓜黄瓜(学名:Cucumis sativus)也称胡瓜、青瓜、刺瓜、瓜仔哖,属葫芦科甜瓜属植物。广泛分布于中国各地,是中国夏季主要蔬菜,且为温室产品之一。黄瓜原产印度,西汉时期张骞出使西域时
  • 迈克尔·霍华德迈克尔·霍华德,林姆的霍华德男爵,CH,QC,PC(英语:Michael Howard, Baron Howard of Lympne,1941年7月7日-),英国保守党政治家,大律师出身,2003年至2005年任保守党党魁。霍华德从1983年至
  • 生物圈保护区生物圈保护区(Biosphere Reserves),是联合国教科文组织在其“人与生物圈计划”(MAB)中提出的一项概念,指受到保护的陆地、海岸带或海洋生态系统的代表性区域。截至2011年,该组织已
  • 越南并殖吸虫越南并殖吸虫(学名:Paragonimus vietnamensis)为斜睾目住胞科并殖属的肺吸虫动物。本物种的特点是其体型相对其他同属物种为大:直径达0.8毫米(800微米)。体圆。型态跟 P. microrch
  • 四进制四进制是以4为底数的进位制,以 0、1、2 和 3 四个数字表示任何实数。四进制与所有固定底数的记数系统有着很多共同的属性,比如以标准的形式表示任何实数的能力(近乎独特),以及表