Polytypic downwards accumulations
A downwards accumulation is a higher-order operation that distributes information downwards through a data structure, from the root towards the leaves. The concept was originally introduced in an ad hoc way for just a couple of kinds of tree. We generalize the concept to an arbitrary polynomial datatype; our generalization proceeds via the notion of a path in such a datatype.
KeywordsBinary Tree External Node Function Path Label Type Label Variant
Unable to display preview. Download preview PDF.
- 1.Roland Backhouse, Henk Doornbos, and Paul Hoogendijk. A class of commuting relators. In STOP 1992 Summerschool on Constructive Algorithmics. STOP project, 1992.Google Scholar
- 4.Richard S. Bird. Addendum to “The promotion and accumulation strategies in transformational programming”. ACM Transactions on Programming Languages and Systems, 7(3):490–492, July 1985.Google Scholar
- 5.Richard S. Bird. An introduction to the theory of lists. In M. Broy, editor, Logic of Programming and Calculi of Discrete Design, pages 3–42. Springer-Verlag, 1987. Also available as Technical Monograph PRG-56, from the Programming Research Group, Oxford University.Google Scholar
- 7.Eerke Boiten. Views of Formal Program Development. PhD thesis, Department of Informatics, University of Nijmegen, 1992.Google Scholar
- 8.Jeremy Gibbons. Algebras for Tree Algorithms. D. Phil. thesis, Programming Research Group, Oxford University, 1991. Available as Technical Monograph PRG-94.Google Scholar
- 9.Jeremy Gibbons. Upwards and downwards accumulations on trees. In R. S. Bird, C. C. Morgan, and J. C. P. Woodcock, editors, LNCS 669: Mathematics of Program Construction, pages 122–138. Springer-Verlag, 1993. A revised version appears in the Proceedings of the Massey Functional Programming Workshop, 1992.Google Scholar
- 13.Jeremy Gibbons and Geraint Jones. Against the grain: Linear-time breadth-first tree algorithms. Oxford Brookes University and Oxford University Computing Laboratory, 1998.Google Scholar
- 14.Paul Hoogendijk. A Generic Theory of Datatypes. PhD thesis, TU Eindhoven, 1997.Google Scholar
- 15.Johan Jeuring and Patrick Jansson. Polytypic programming. In John Launchbury, Erik Meijer, and Tim Sheard, editors, LNCS 1129: Advanced Functional Programming. Springer-Verlag, 1996.Google Scholar
- 17.Lambert Meertens. Paramorphisms. Formal Aspects of Computing, 4(5):413–424, 1992. Also available as Technical Report CS-R9005, CWI, Amsterdam.Google Scholar
- 18.David B. Skillicorn. Structured parallel computation in structured documents. Journal of Universal Computer Science, 3(1), 1997.Google Scholar