New Language for parallel processing - SEZ. YALE.

Steven Ericsson Zenith <zenith-steven@CS.YALE.EDU>
Sat, 14 Jul 90 23:02:11 GMT

          From comp.compilers

Related articles
New Language for parallel processing - SEZ. YALE. zenith-steven@CS.YALE.EDU (Steven Ericsson Zenith) (1990-07-14)
| List of all articles for this month |

Newsgroups: comp.compilers
From: Steven Ericsson Zenith <zenith-steven@CS.YALE.EDU>
Keywords: parallel, report
Organization: Compilers Central
Date: Sat, 14 Jul 90 23:02:11 GMT

Copies of the following report can be obtained from Chris Hatchell at Yale.
Email requests to: hatchell-chris@cs.yale.edu


            Programming with Ease: Semiotic definition of the language
Steven Ericsson Zenith
July 1990


Yale Technical report TR809
Yale University
Department of Computer Science
New Haven,
Connecticut. USA.


This document proposes a new language for parallel computation and
related (distributed) data structures. The language provides a type
associative storage model which can be efficiently implemented on a
range of machine memory architectures.


Ease is a general purpose, high level, imperative programming language
designed to enable the simple expression of concurrent algorithms on
parallel machines. Parallel machine in this context refers not only to
general purpose parallel machines but also to specialised (perhaps
massively parallel) super computers, embedded systems and real time
control systems.


A program is described as a collection of processes which execute
concurrently, constructing and interacting via strictly typed
distributed data structures called "contexts".


Ease is novel in the following regard: a "context" provides a priority
oriented and strictly typed intermediary in which distributed data
structures are constructed and by which processes may interact. Ease
provides simple and symmetric binding operators which allow complex
data structures to be constructed and exchanged efficiently. Ease
provides constructions for both cooperative and subordinate
concurrency.


Ease is a development and synthesis of several concepts that exist in
the domain of parallel processing. The principal synthesis in Ease is
between the process constructor concepts of CSP and the ideas of
distributed data structures found in the tuple space concepts of
Linda.


Unlike the generalised Tuple Space of Linda, Ease contexts are
strictly typed and perform no matching at runtime.


Ease is designed to exploit opportunities for efficiency on a range of
machine architectures, whilst remaining architecture independent.


The main requirements when designing Ease were that it should be an
expressive, well defined language, efficient to implement and
applicable to a wide range of applications in general purpose
computing and embedded systems, and be suited as a target formalism
for automatic generation.


Funding for this work was provided in part by NSF grant CCR--8657615
. .
Steven Ericsson Zenith * email: zenith@cs.yale.edu
Department of Computer Science | voice: (203) 432 1278
Yale University 51 Prospect Street New Haven CT 06520 USA.
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.