SISAL

Source: Wikipedia, the free encyclopedia.
SISAL

SISAL (Streams and Iteration in a Single Assignment Language) is a general-purpose

strict semantics, implicit parallelism
, and efficient array handling. SISAL outputs a
multiprocessors
.

History

SISAL was defined in 1983 by James McGraw et al., at the University of Manchester, LLNL, Colorado State University and DEC. It was revised in 1985, and the first compiled implementation was made in 1986. Its performance is superior to C and rivals Fortran, according to some sources,[1] combined with efficient and automatic parallelization.

SISAL's name came from grepping "sal" for "Single Assignment Language" from the Unix dictionary /usr/dict/words.

Versions exist for the

Transputers and systolic arrays
.

Architecture

The requirements for a fine-grain parallelism language are better met with a dataflow language than a systems language.[citation needed]

SISAL is more than just a dataflow and fine-grain language. It is a set of tools that convert a textual human readable dataflow language into a graph format (named IF1 - Intermediary Form 1). Part of the SISAL project also involved converting this graph format into runable C code.[2]

SISAL Renaissance Era

In 2010 SISAL saw a brief resurgence when a group of undergraduates at Worcester Polytechnic Institute investigated implementing a fine-grain parallelism backend for the SISAL language.[2]

In 2018 SISAL was modernized with indent-based syntax, first-class functions, lambdas, closures and lazy semantics within a project SISAL-IS.[3]

References

Notes

  1. ^ Retire Fortran?: a debate rekindled, David Cann, August 1992, Communications of the ACM, Volume 35, Issue 8
  2. ^ a b Fine-Grain Parallelism: An Investigative Study into the merits of Graphical Programming and a Fine-grain Execution Mode
  3. ^ Modernized Sisal Interpreter (MSInt)

Bibliography

External links

This page is based on the copyrighted Wikipedia article: SISAL. Articles is available under the CC BY-SA 3.0 license; additional terms may apply.Privacy Policy