首页> 外文会议>ACM symposium on LISP and functional programming >Constant time interpretation for shallow-bound variables in the presence of mixed special/local declarations
【24h】

Constant time interpretation for shallow-bound variables in the presence of mixed special/local declarations

机译:在混合特殊/局部声明的情况下,浅时变量的恒定时间解释

获取原文

摘要

The semantics of variables in LISP are usually centered around the compiled-code environment; in many shallow-bound systems, local variables are implemented as stack-slots in the compiled environment, but are merely converted to special (or "fluid") variables by the interpreter. This paper shows a method for separating local from special bindings when interpreting, such that the time to evaluate a reference to a variable is bounded by a modestly small constant; comparison is made to methods which require a time proportional to the number of variables present in the function being interpreted. Notations: A MacLISP style is used for program examples; thus DEFUN rather than DEFINE, LET often in preference to LAMBDA, and semi-colon for noting commentary. Without loss of generality, we refer to all variable binding, whether from LET, LAMBDA, PROG, or whatever, as "lambda binding".

机译:

LISP中变量​​的语义通常以编译代码环境为中心。在许多浅边界系统中,局部变量在编译环境中实现为堆栈插槽,但是解释器仅将其转换为特殊(或“流体”)变量。本文介绍了一种在解释时将局部绑定与特殊绑定分开的方法,从而使对变量的引用的求值时间受适度较小的常量的限制。比较需要时间与要解释的函数中存在的变量数量成比例的方法。表示法:MacLISP样式用于程序示例。因此,DEFUN而不是DEFINE,LET通常优先于LAMBDA,而分号则用于注释。在不失一般性的前提下,我们将所有变量绑定(无论来自LET,LAMBDA,PROG或其他任何方式)都称为“ lambda绑定”。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号