A Shortcut Fusion Approach to Accumulations

Mónica MartínezAlberto Pardo

In functional programming it is common to write programs as composition of other simpler functions. This makes it possible to take advantage of the well-known benefits of modular programming. However, in many cases, the resulting programs have efficiency problems caused by the generation of data structures that are solely used for communication between the intervening functions in the compositions. Many of those intermediate structures can be eliminated by an appropriate combination of the codes of the involved functions using a technique called program fusion. In this work, we propose program fusion techniques for accumulations, which are recursive functions that use additional parameters for keeping intermediate results. Accumulations are known to be difficult to be fused because of the presence of the additional parameters and the fact that in many cases results are computed in those parameters. Our analysis is based on a shortcut fusion approach which turns out to be effective in the case of accumulations. We present benchmarks that illustrate the impact of shortcut fusion on accumulations.

Caso o link acima esteja inválido, faça uma busca pelo texto completo na Web: Buscar na Web

Biblioteca Digital Brasileira de Computação - Contato:
     Mantida por: