Cyclic data structures can be tricky to create and manipulate in declarative programming languages. In a declarative setting, a natural way to view cyclic structures is as denoting regular trees, those trees which may be infinite but have only a finite number of distinct subtrees. This paper shows how to implement the unfold (anamorphism) operator in both eager and lazy languages so as to create cyclic structures when the result is a regular tree as opposed to merely infinite lazy structures. The usual fold (catamorphism) operator when used with a strict combining function on any infinite tree yields an undefined result. As an alternative, this paper defines and show how to implement a cycfold operator with more useful semantics when used ...
International audienceWe give a complete proof of the equivalence between the unbiased and biased de...
It is argued that list structures containing cycles are useful and unobjectionable Lisp entities. If...
AbstractEvaluation of attributes w.r.t. an attribute grammar can be obtained by inductively computin...
Terms are a concise representation of tree structures. Since they can benaturally defined by an indu...
Cyclic data structures, such as cyclic lists, in functional programming aretricky to handle because ...
Abstract. Terms are a concise representation of tree structures. Since they can be naturally defined...
. Cyclic sharing (cyclic graph rewriting) has been used as a practical technique for implementing re...
Arrows involving a loop operator provide an interesting programming methodology for looping computat...
Cyclic data structures, such as cyclic lists, in functional programming are tricky to handle because...
We introduce a fold operation that realises a tree-to-graph transduction by merging selected nodes i...
We use a relational model of pointer structures to calculate a number of standard algorithms on sing...
AbstractMeijer, Fokkinga, and Paterson introduced several recursion operators associated with data t...
We investigate languages for querying and transforming unstructured data, by which we mean languages...
Initial algebra semantics is one of the cornerstones of the theory of modern functional programming ...
International audienceEvaluation of attributes w.r.t. an attribute grammar can be obtained by induct...
International audienceWe give a complete proof of the equivalence between the unbiased and biased de...
It is argued that list structures containing cycles are useful and unobjectionable Lisp entities. If...
AbstractEvaluation of attributes w.r.t. an attribute grammar can be obtained by inductively computin...
Terms are a concise representation of tree structures. Since they can benaturally defined by an indu...
Cyclic data structures, such as cyclic lists, in functional programming aretricky to handle because ...
Abstract. Terms are a concise representation of tree structures. Since they can be naturally defined...
. Cyclic sharing (cyclic graph rewriting) has been used as a practical technique for implementing re...
Arrows involving a loop operator provide an interesting programming methodology for looping computat...
Cyclic data structures, such as cyclic lists, in functional programming are tricky to handle because...
We introduce a fold operation that realises a tree-to-graph transduction by merging selected nodes i...
We use a relational model of pointer structures to calculate a number of standard algorithms on sing...
AbstractMeijer, Fokkinga, and Paterson introduced several recursion operators associated with data t...
We investigate languages for querying and transforming unstructured data, by which we mean languages...
Initial algebra semantics is one of the cornerstones of the theory of modern functional programming ...
International audienceEvaluation of attributes w.r.t. an attribute grammar can be obtained by induct...
International audienceWe give a complete proof of the equivalence between the unbiased and biased de...
It is argued that list structures containing cycles are useful and unobjectionable Lisp entities. If...
AbstractEvaluation of attributes w.r.t. an attribute grammar can be obtained by inductively computin...