What is a recursive module?
What is a recursive module?
复制标题
什么是递归模块?
DOI:
10.1145/301618.301641
复制
发表时间:
1999
期刊:
影响因子:
--
通讯作者:
Sidd Puri
中科院分区:
文献类型:
--
作者:
Karl Crary;R. Harper;Sidd Puri
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.