Iterative and Parallel Algorithm Design from High Level Language Traces
We present a high level language called SequenceL. The language allows a programmer to describe functions in terms of abstract relationships between their inputs and outputs, and the semantics of the language are capable of automatically discovering and implementing the required algorithms, including iterative and parallel control structures in many cases. Current implementations do not produce code of comparable efficiency to that of a good human programmer. Current implementations can, however, be used as a tool to guide human programmers in discovering and comparing options for parallelizing their solutions. This paper describes the language and approach, and illustrates this kind of guidance with a simple example.
Unable to display preview. Download preview PDF.