SASL语言

SASL
编程范型纯函数式
設計者David Turner
发行时间1972年​(1972
受影响于
ISWIM
影響語言
KRC, Miranda, Haskell

SASL(缩写的St Andrews Static Language,或者St Andrews Standard Language,义为圣安德鲁斯静态语言或标准语言),是纯函数式编程语言,在1972年由David Turner圣安德鲁斯大学,基于ISWIM的应用式子集而开发[1]。在1976年,Turner重新设计并重新实现它为非严格(惰性)语言[2]。它以这种形式成为了Turner以后的语言KRCMiranda的基础,但是SASL表现为无类型的,而Miranda有多态类型。

Burroughs公司使用SASL来书写编译器和操作系统[3]

样例代码

rec fac n = n < 0 -> 1;
            n * fac (n-1)
in fac 10

let ((a,b),(c,d)) = x in ((a,c),(b,d))

length ()    = 0
length (a:x) = 1 + length x

ack 0 n = n+1
ack m 0 = ack (m-1) 1
ack m n = ack (m-1) (ack m (n-1))

taut f = logical f -> f;
         taut (f True) & taut (f False)

引用

  1. ^ Turner, D.A. An Implementation of SASL. University of St. Andrews, Department of Computer Science Technical Report. 
  2. ^ D.A. Turner. A New Implementation Technique for Applicative Languages (PDF). [2021-09-06]. (原始内容 (PDF)存档于2021-09-06). 
  3. ^ Turner, D. A. Some History of Functional Programming Languages (PDF). [2020-04-25]. (原始内容存档 (PDF)于2020-04-15). 

外部链接