The under-performing unfold: a new approach to optimising corecursive programs

Hackett, Jennifer and Hutton, Graham and Jaskelioff, Mauro (2013) The under-performing unfold: a new approach to optimising corecursive programs. In: International Symposium on Implementation and Application of Functional Languages (25th), 28-30 Aug 2013, Nijmegen, Netherlands.

[img]
Preview
PDF - Requires a PDF viewer such as GSview, Xpdf or Adobe Acrobat Reader
Download (250kB) | Preview

Abstract

This paper presents a new approach to optimising corecursive programs by factorisation. In particular, we focus on programs written using the corecursion operator unfold. We use and expand upon the proof techniques of guarded coinduction and unfold fusion, capturing a pattern of generalising coinductive hypotheses by means of abstraction and representation functions. The pattern we observe is simple, has not been observed before, and is widely applicable. We develop a general program factorisation theorem from this pattern, demonstrating its utility with a range of practical examples.

Item Type: Conference or Workshop Item (Paper)
Additional Information: Published in: IFL '13: proceedings of the 25th Symposium on Implementation and Application of Functional Languages. New York : ACM, 2014, ISBN: 978-1-4503-2988-0. pp. 4321-4332, doi: 10.1145/2620678.2620679
Keywords: fusion, factorisation, coinduction, unfolds
Schools/Departments: University of Nottingham UK Campus > Faculty of Science > School of Computer Science
Depositing User: Hutton, Prof Graham
Date Deposited: 26 Feb 2015 16:14
Last Modified: 14 Sep 2016 21:35
URI: http://eprints.nottingham.ac.uk/id/eprint/28183

Actions (Archive Staff Only)

Edit View Edit View