自循环解释器

✍ dations ◷ 2025-12-08 15:24:41 #计算机编程,计算机科学

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

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

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

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

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

(+ (square 2) (square 3))

其解释过程如下:

相关

  • 吸入吸入是指动物进行呼吸时,空气或其他物质经由气管进入肺泡的运动。主要是由横膈膜的收缩与舒张来控制。当吸入空气时,横隔膜会呈平形,肺里的空气体积会增加,气压则会减少。
  • Assub2/subSsub3/sub三硫化二砷是一种无机化合物,化学式为As2S3。三硫化二砷在自然界以雌黄矿物的形式存在。三硫化二砷存在晶体和无定形体。单斜的As2S3是层状结构,每个As和3个S成键,As-S为224pm,
  • 施瓦本汝拉山坐标:48°18′N 9°21′E / 48.3°N 9.35°E / 48.3; 9.35施瓦本汝拉山(德语:Schwäbische Alb、Schwäbischer Jura 或 Schwabenalb;英语:Swabian Jura;法语:Jura souabe)是德国的
  • 手帕手绢,亦称手帕、手捏子、手巾、面帕,是一种生活用品。
  • 登陆月球登陆月球是指人类控制无人太空船或者直接驾驶太空船降落在月球上。到目前为止,只有美国、前苏联和中国成功把探测器送到月球表面,只有美国成功派出宇航员登陆月球表面。当中,美
  • span style=color:#FFFFFF;最佳女主角/span英国电影学院奖最佳女主角(BAFTA Award for Best Actress in a Leading Role)是英国电影学院奖的奖项,颁发给前一年度电影类表现最佳的女演员,于1952年开始颁发。1952年—1967年
  • 体育画报体育画报(Sports Illustrated)是由Authentic Brands所拥有的美国体育周刊。拥有超过300万的订户,每个礼拜2300万成人的阅读量,在美国包括超过1300万、19%的男性。是第一个获得美
  • 茄子(学名:),福建人称为红菜,吴越人沿用宋代叫法称为落苏,广东人称为矮瓜、茄瓜,客家人称之为吊菜,是茄科茄属一年生草本植物,热带为多年生。其结出的果实可食用,颜色多为紫色或紫黑色
  • 阿芒德·杜普兰蒂斯阿芒德·“蒙多”·杜普兰蒂斯(瑞典语:Armand "Mondo" Duplantis,1999年11月10日-)生于美国路易斯安那州拉法叶,是一名瑞典男子田径运动员,专项是撑竿跳高。杜普兰蒂斯同时拥有美国
  • 绞拧数绞拧数(英语:Writhe)是纽结理论中的一个纽结不变量。指纽结在各个方向投影图的拧数的平均值。一般记作: W r {\displaystyle Wr} 。对