Research group

Programming Languages and Tools Lab

Tupling via Constructive Algorithmics

September 20

Tupling is a program transformation technique aimed at eliminating multiple traversals of the same data structures, which is achieved by grouping some recursive function calls into tuples. It was first developed within the fold/unfold framework which introduces a lot of costs and complexities to avoid non-termination and thus is impractical. 

In this talk, we are going to consider tupling in the constructive algorithmics framework. By representing recursion explicitly in the form of hylomorphisms and modifying it with a set of calculational rules, it achieves fully automatic, modular, composable program transformations which are cheap to implement.  

Hu, Zhenjiang, et al. "Tupling calculation eliminates multiple data traversals." ACM Sigplan Notices 32.8 (1997)  

Ссылка на встречу: