SISAL: Difference between revisions
m Reverted edits by Jaehee0113 (talk) to last version by Myork |
authorship |
||
Line 11: | Line 11: | ||
| influenced = [[SAC programming language|SAC]] |
| influenced = [[SAC programming language|SAC]] |
||
}} |
}} |
||
'''SISAL''' ('''S'''treams and '''I'''teration in a '''S'''ingle '''A'''ssignment '''L'''anguage) is a general-purpose [[single assignment]] [[functional programming language|functional]] [[programming language]] with [[strict semantics]], [[implicit parallelism]], and efficient array handling. SISAL outputs a [[dataflow]] graph in Intermediary Form 1 (IF1). It was derived from VAL (Value-oriented Algorithmic Language), and adds [[recursion]] and finite streams. It has a [[Pascal programming language|Pascal]]-like syntax and was designed to be a common high-level language for numerical programs on a variety of [[multiprocessor]]s. |
'''SISAL''' ('''S'''treams and '''I'''teration in a '''S'''ingle '''A'''ssignment '''L'''anguage) is a general-purpose [[single assignment]] [[functional programming language|functional]] [[programming language]] with [[strict semantics]], [[implicit parallelism]], and efficient array handling. SISAL outputs a [[dataflow]] graph in Intermediary Form 1 (IF1). It was derived from VAL (Value-oriented Algorithmic Language, designed by [[Jack Dennis]]), and adds [[recursion]] and finite streams. It has a [[Pascal programming language|Pascal]]-like syntax and was designed to be a common high-level language for numerical programs on a variety of [[multiprocessor]]s. |
||
== History == |
== History == |
Revision as of 00:15, 9 December 2011
Paradigm | functional, dataflow |
---|---|
Designed by | James McGraw |
Developer | James McGraw et al., at University of Manchester, LLNL, Colorado State University, and DEC |
First appeared | 1983 |
Typing discipline | static, strong |
Major implementations | |
osc, sisalc | |
Influenced by | |
VAL, Pascal, C, Fortran | |
Influenced | |
SAC |
SISAL (Streams and Iteration in a Single Assignment Language) is a general-purpose single assignment functional programming language with strict semantics, implicit parallelism, and efficient array handling. SISAL outputs a dataflow graph in Intermediary Form 1 (IF1). It was derived from VAL (Value-oriented Algorithmic Language, designed by Jack Dennis), and adds recursion and finite streams. It has a Pascal-like syntax and was designed to be a common high-level language for numerical programs on a variety of 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 Cray X-MP, Y-MP, 2; Sequent, Encore Alliant, DEC VAX-11/784, dataflow architectures, KSR1, Transputers and systolic arrays.
Footnotes
- ^ Retire Fortran?: a debate rekindled, David Cann, August 1992, Communications of the ACM, Volume 35, Issue 8
References
This article is based on material taken from the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.
External links
- SISAL Parallel Programming SourceForge.net project page