Applications of Recursively Defined Data Structures
arXiv:2206.12795
Abstract
A circular program contains a data structure whose definition is self-referential or recursive. The use of such a definition allows efficient functional programs to be written and can avoid repeated evaluations and the creation of intermediate data structures that would have to be garbage collected. This paper uses circular programs in various ways, to implement memo-structures and explicit search-trees to hold solutions to constraint-satisfaction problems.
The paper originally appeared in the Australian Computer Journal (ISSN 0004-8917). The journal was published by the Australian Computer Society from 1967 to 1999