Skeletal Programming, Present and Future

Murray Cole

This talk considers the common theme which unites the participants, namely that abstraction and control of structure should play an important role in parallel programming, and suggests four related areas in which further research is required. Firstly, in the area of "expressivity" it is as yet unclear what might constitute the right set of types and operators (or whether such a bounded set even exists) and what might be the most appropriate language framework within which to express the base level of a skeletal scheme. Secondly, the challenge of building a tractable, compositional cost calculus for such a model, and the choice of underlying cost/computational model must be resolved. Thirdly, the techniques and frameworks required for formal program derivation and transformation when the target context is parallel must be further developed. Finally, our implementations and concrete programming languages must be sensitive to the needs of "real" parallel programmers, who must be convinced that our ideas have something to offer in practice.