<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=SISAL</id>
	<title>SISAL - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=SISAL"/>
	<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=SISAL&amp;action=history"/>
	<updated>2026-07-15T05:15:39Z</updated>
	<subtitle>在这个wiki上该页的修订历史</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://arolstar52-zhtest.hf.space/index.php?title=SISAL&amp;diff=3411413&amp;oldid=prev</id>
		<title>imported&gt;SchlurcherBot：​Bot: http → https</title>
		<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=SISAL&amp;diff=3411413&amp;oldid=prev"/>
		<updated>2026-01-24T05:55:07Z</updated>

		<summary type="html">&lt;p&gt;Bot: http → https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{NoteTA&lt;br /&gt;
|G1 = IT&lt;br /&gt;
}}&lt;br /&gt;
{{Infobox programming language&lt;br /&gt;
| name = SISAL&lt;br /&gt;
| paradigm = [[函数式编程|函数式]]、[[数据流程编程|数据流程]]&lt;br /&gt;
| year = {{Start date and age|1983}}&lt;br /&gt;
| designer = James McGraw&lt;br /&gt;
| developer = James McGraw等人，在[[曼彻斯特大学]]、[[劳伦斯利弗莫尔国家实验室|LLNL]]、[[科罗拉多州立大学]]和[[DEC]]&lt;br /&gt;
| latest release version = 14.1&lt;br /&gt;
| latest release date = {{start date and age|2013|08|11}}&lt;br /&gt;
| typing = [[静态类型|静态]]、[[强类型编程语言|强类型]]&lt;br /&gt;
| implementations = osc, sisalc&lt;br /&gt;
| influenced_by = VAL, [[Pascal (程式语言)|Pascal]], [[C语言|C]], [[Fortran]]&lt;br /&gt;
| influenced = [[Haskell]]，[[SAC编程语言|SAC]]&lt;br /&gt;
| website = {{URL|https://sourceforge.net/projects/sisal/}}&lt;br /&gt;
}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;SISAL&amp;#039;&amp;#039;&amp;#039;（串流和迭代所用单赋值语言）是通用[[单赋值]][[函数式编程语言]]，它具有{{le|严格语义|Strict function}}、{{le|隐式并行|Implicit parallelism}}和高效[[阵列]]处理。SISAL输出中间形式1（IF1）的[[数据流程]][[图 (数学)|图]]。它派生自VAL（{{le|Jack Dennis|Jack Dennis}}1979年设计的面向值的算法语言），并增加了[[递归]]和有限串流（stream）。它有着类[[Pascal编程语言|Pascal]]语法，并被设计为用于在各种[[多处理器]]上的数值程序的高级语言。&lt;br /&gt;
&lt;br /&gt;
== 历史 ==&lt;br /&gt;
SISAL的定义在1983年由James McGraw等人于[[曼彻斯特大学]]、[[劳伦斯利弗莫尔国家实验室]]、[[科罗拉多州立大学]]和[[DEC]]提出&amp;lt;ref&amp;gt;James R. McGraw, Stephen K. Skedzielewski, Stephen J. Allan, Dale H. Grit, R. Oldehoeft, John R. W. Glauert, Ivan Dobes, Paul H. Hohensee. [https://kestrel.nmt.edu/~raymond/software/sisal/SisalManual.pdf SISAL: streams and iteration in a single-assignment language. Language reference manual]。&amp;lt;/ref&amp;gt;。它被修订于1985年，而第一个编译实现于1986年做出。据某些来源所说&amp;lt;ref&amp;gt;Retire Fortran?: a debate rekindled, David Cann, August 1992, Communications of the ACM, Volume 35,  Issue 8&amp;lt;/ref&amp;gt;，它的性能优于[[C语言|C]]并匹敌[[Fortran]]，它将高效性和{{le|自动并行化|Automatic parallelization}}结合了起来。&lt;br /&gt;
&lt;br /&gt;
它有如下版本：[[克雷公司|Cray]] {{le|Cray X-MP|Cray X-MP|X-MP}}、Cray {{le|Cray Y-MP|Cray Y-MP|Y-MP}}、[[Cray-2]]、{{le|Sequent计算机系统|Sequent Computer Systems|Sequent}}、{{le|Encore计算机|Encore Computer|Encore Alliant}}、[[VAX|DEC VAX-11/784]]、{{le|数据流程架构|Dataflow architecture}}、KSR1、[[晶體電腦|Transputer]]和[[脉动阵列]]。&lt;br /&gt;
&lt;br /&gt;
==架构==&lt;br /&gt;
&lt;br /&gt;
SISAL不只是数据流程和细粒度并行的语言。它还是把人类可读文字的数据流程语言转换成图格式（所谓的“IF1”，即中间形式1）的一组工具。SISAL计划有一部份还涉及到将这种图转换成可运行的C代码&amp;lt;ref name=&amp;quot;wpi2010&amp;quot;/&amp;gt;。&lt;br /&gt;
&lt;br /&gt;
==例子==&lt;br /&gt;
两个&amp;lt;tt&amp;gt;n×n&amp;lt;/tt&amp;gt;矩阵的[[矩阵乘法|乘法]]的例子程序：&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;pascal&amp;quot;&amp;gt;&lt;br /&gt;
define main&lt;br /&gt;
type OneDim = array [real];&lt;br /&gt;
type TwoDim = array [OneDim];&lt;br /&gt;
&lt;br /&gt;
function generate(n : integer returns TwoDim, TwoDim)&lt;br /&gt;
    for i in 1, n cross j in 1, n&lt;br /&gt;
        returns array of real(i)/real(j)&lt;br /&gt;
                array of real(i)*real(j)&lt;br /&gt;
    end for&lt;br /&gt;
end function % generate&lt;br /&gt;
&lt;br /&gt;
function doit(n : integer; A, B : TwoDim returns TwoDim)&lt;br /&gt;
    for i in 1, n&lt;br /&gt;
        cross j in 1, n&lt;br /&gt;
        c := for k in 1, n&lt;br /&gt;
                 t := A[i,k] * B[k,j]&lt;br /&gt;
                 returns value of sum t&lt;br /&gt;
             end for&lt;br /&gt;
        returns array of c&lt;br /&gt;
    end for&lt;br /&gt;
end function % doit&lt;br /&gt;
&lt;br /&gt;
function main(n : integer returns TwoDim)&lt;br /&gt;
let A, B := generate(n) in&lt;br /&gt;
    doit(n, A, B)&lt;br /&gt;
end let&lt;br /&gt;
end function % main&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SISAL复兴==&lt;br /&gt;
在2010年SISAL短暂的复活了，[[伍斯特理工学院]]的一群本科生为SISAL语言探究实现了一个细粒度并行后端&amp;lt;ref name=&amp;quot;wpi2010&amp;quot;&amp;gt;{{Cite web |url=http://www.wpi.edu/Pubs/E-project/Available/E-project-031210-134520/unrestricted/FinalReport.pdf |title=存档副本 |accessdate=2020-04-17 |archive-date=2016-03-04 |archive-url=https://web.archive.org/web/20160304190504/http://www.wpi.edu/Pubs/E-project/Available/E-project-031210-134520/unrestricted/FinalReport.pdf |dead-url=no }}&amp;lt;/ref&amp;gt;。&lt;br /&gt;
&lt;br /&gt;
在2018年于SISAL-IS计划中SISAL被现代化为基于缩进的语法、头等函数、lambda、闭包和惰性语义&amp;lt;ref name=&amp;quot;sisalis&amp;quot;&amp;gt;{{Cite web |url=https://github.com/parsifal-47/sisal-is |title=存档副本 |accessdate=2020-04-17 |archive-date=2018-06-12 |archive-url=https://web.archive.org/web/20180612224008/https://github.com/parsifal-47/sisal-is |dead-url=no }}&amp;lt;/ref&amp;gt;。&lt;br /&gt;
&lt;br /&gt;
==脚注==&lt;br /&gt;
{{reflist}}&lt;br /&gt;
&lt;br /&gt;
== 引用 ==&lt;br /&gt;
{{FOLDOC}}&lt;br /&gt;
* [https://web.archive.org/web/20070920003407/http://hopl.murdoch.edu.au/showlanguage.prx?exp=876 VAL Overview]&lt;br /&gt;
* [http://www.cmp.uea.ac.uk/~jrwg/Sisal/00.Contents.html Sisal Language Tutorial]{{Wayback|url=http://www.cmp.uea.ac.uk/~jrwg/Sisal/00.Contents.html |date=20160314055556 }}&lt;br /&gt;
&lt;br /&gt;
== 外部链接 ==&lt;br /&gt;
* [http://sourceforge.net/projects/sisal SISAL Parallel Programming]{{Wayback|url=http://sourceforge.net/projects/sisal |date=20160730153507 }} SourceForge.net project page&lt;br /&gt;
&lt;br /&gt;
[[Category:并发编程语言]]&lt;br /&gt;
[[Category:函数式编程语言]]&lt;/div&gt;</summary>
		<author><name>imported&gt;SchlurcherBot</name></author>
	</entry>
</feed>