Abstract
We propose a method of developing efficient programs for finding the optimal sequence, such as the maximum valued one among those that are acceptable. We introduce a method of deriving efficient algorithms from naive enumerate-and-choose-style ones. Our method is based on shortcut fusion, which is a program transformation for eliminating intermediate data structures passed between functions, and a set of auxiliary transformations. As an implementation of our method, we introduce a library for finding optimal sequences. The library consists of proposed transformations, together with functions useful to describe desirable sequences, so that naive enumerate-and-choose-style programs will be automatically improved.
Original language | English |
---|---|
Pages (from-to) | 31-59 |
Number of pages | 29 |
Journal | New Generation Computing |
Volume | 29 |
Issue number | 1 |
DOIs | |
Publication status | Published - 2011 Jan |
Externally published | Yes |
Keywords
- Dynamic Programming
- Functional Programming
- Program Transformation
- Shortcut Fusion
ASJC Scopus subject areas
- Software
- Theoretical Computer Science
- Hardware and Architecture
- Computer Networks and Communications