What is a recursive module?

What is a recursive module?
复制标题

什么是递归模块?

DOI:
10.1145/301618.301641
复制
发表时间:
1999
期刊:
ArXiv
影响因子:
--
通讯作者:
Sidd Puri
Sidd Puri
中科院分区:
--
文献类型:
--
作者:
Karl Crary;R. Harper;Sidd Puri

文献摘要

被引文献

相似文献

分层模块系统是构建大型程序的有效工具。严格的层次模块系统对程序单元之间的进口依赖性施加了无环订购。这可以通过强制将相互依赖的组件合并到单个模块中来阻碍模块化编程。最近,已经针对循环依赖性的模块系统提出了一些建议,但是尚不清楚这些建议如何相互关系,也不清楚如何将它们集成到像ML的诸如ML的表达模块系统中,以解决我们提供的问题。在高阶模块系统的“相位触发”形式主义的背景下,对递归模块概念的类型理论分析。我们使用递归模块机制和一种新形式的签名(称为递归依赖的签名)扩展了该微积分,以支持递归模块的定义。这些扩展是通过更原始的语言构造来解释来证明的。这种解释也可以作为实施指南。
A hierarchical module system is an effective tool for structuring large programs. Strictly hierarchical module systems impose an acyclic ordering on import dependencies among program units. This can impede modular programming by forcing mutually-dependent components to be consolidated into a single module. Recently there have been several proposals for module systems that admit cyclic dependencies, but it is not clear how these proposals relate to one another, nor how one might integrate them into an expressive module system such as that of ML.To address this question we provide a type-theoretic analysis of the notion of a recursive module in the context of a "phase-distinction" formalism for higher-order module systems. We extend this calculus with a recursive module mechanism and a new form of signature, called a recursively dependent signature, to support the definition of recursive modules. These extensions are justified by an interpretation in terms of more primitive language constructs. This interpretation may also serve as a guide for implementation.