Denotational Semantics of a Para-functional Programming Language

Authors:

Paul Hudak

Abstract:

A para-functional programming language is a functional language that has been extended with special annotations that provide an extra degree of control over parallel evaluation.  Of most interest are annotations that allow one to express the dynamic mapping of a program onto a known  multiprocessor topology.  Since it is quite desirable to provide a precise semantics for any programming language, in this paper a denotational semantics is given for a simple para-functional programming language
with mapping annotations.  A precise meaning is given not only to the normal functional behavior of the program (i.e., the answer), but also to the operational notion of where (i.e., on what processor) expressions are evaluated.  The latter semantics is accomplished through an abstract entity called an execution tree.

Bibtex:

 @article{huda86k
    ,key={hudak}
    ,author={Hudak, P.}
    ,title={Denotational Semantics of a Para-functional Programming Language}
    ,journal={International Journal of Parallel Programming}
    ,volume=15
    ,number=2
    ,year=1986
    ,month=Apr
    ,pages={103-125}
    } 

Links:

paralfl_ijpp.pdf