Implementing functional programs on a hypercube multiprocessor

Abstract
Alfalfa is an implementation of a functional language on the Intel iPSC multiprocessor. It is based on a heterogeneous abstract machine model consisting of both graph reduction and stack oriented execution. Alfalfa has two major components, a compiler and a run-time system. The source language, ALFL, contains no constructs that allow the programmer to specify parallelism or synchronization; thus it is the task of the compiler to detect the exploitable parallelism in a program. The run-time system supports dynamic scheduling, interprocessor communication, and storage management. A number of statistics gathered during execution are presented.