Ease (programming language)
From Wikipedia, the free encyclopedia
Paradigm: | concurrent |
---|---|
Appeared in: | 1990 |
Designed by: | Steven Ericsson-Zenith |
Major implementations: | various |
Dialects: | C-with-Ease |
Influenced by: | Communicating Sequential Processes, Occam, Linda |
Ease is a general purpose parallel programming language, designed by Steven Ericsson-Zenith of Yale University. It combines the process constructs of CSP with logically shared data structures called contexts. Contexts are parallel data types that are constructed by processes and provide a way for processes to interact.
There are four functions upon contexts:
- read ( context, variable ), copies a value from the shared context to the variable.
- write ( context, expression ), copies the value of 'expression to the shared context.
- put ( context, name ), moves the value bound to name to the shared context. The value of name is subsequently undefined.
- get ( context, name ), moves a value from context and binds it name. The value is removed from the context.
Context types are Singletons, Bags or Streams and can be subscripted arrays.
Ease has a semiotic definition. This means that it takes into account the effect the language has on the programmer and how they develop algorithms. The language was designed to ease the development of parallel programs.
Zenith is also designer of the parallel programming language Occam and the MPI standard. He worked at Yale University on Linda and at INMOS on the Transputer microprocessor for parallel computing. Like Occam, the definition of Ease uses CSP as its mathematical foundation. Steven Zenith is currently at the Institute for Advanced Science & Engineering in California.