Data-parallel functional programming

This paper describes an implementation scheme that maps sequences (lists) in the functional language FP onto a data-parallel SIMD multiprocessor. The mapping is dynamic (i.e., self-organizing at run-time via an atom vector) and is transparent to the programmer. Furthermore, as the problem size and the capability of the architecture increases, the method described will proportionally scale the degree of parallelism. The authors chose FP as the application language because it is a simple yet expressive language and because FP allows one to create functional forms that yield highly-parallel computations when applied to lists representing matrix or vector data. The target architecture is a MasPar MP-1 with 16 K processors.<<ETX>>