出品|开源中国
作者|局长
J 语言邮件列表昨日颁布了 J 语言发明者之一 Roger Hui 去世的讣告。
咱们从讣告得知,Roger Hui 在与癌症抗争数年后,于 2021 年 10 月 16 日星期六下午安详逝去,生命的最后时光在临终关怀医院度过,享年 68 岁。
按照维基百科的介绍,J 语言是图灵奖得到者 Kenneth E. Iverson 和许国华 (Roger Hui) 于 1990 年代初发明的一种阵列编程语言,是 APL 语言(也是由于 Kenneth E. Iverson 所创)的继承者。
邮件表示,Roger 去世的讣告由 Kenneth E. Iverson 儿子 Eric Iverson 发出。从 Eric 的描述来看,Roger 与 Kenneth 不仅是工作上密切合作的伙伴,更加是生活中的好友。虽然 Roger 和 Kenneth 一起创造了 J 语言,并为 APL 做出了重大贡献,但 Eric 暗示自己得知 Roger 去世的信息后,他首要想到的是父亲和 Roger 一块相处时的快乐。
Roger Hui 是一名华人计算机专家,从上世纪 90 年代初期起始,他起始与 Kenneth E. Iverson 合作研发一种类似 APL 的语言的高级扩展,并将其命名为「J 语言 (J programming language)」。J 语言对 APL 进行了多项改进,这些改进旨在修复自 APL 成立败兴始终困惑着 APL 的有些持久性字符集问题,并添加了新的高级功能,如支持并行多指令、都数据操作等。
从 2011 年三月起,J 语言作为自由开源软件,采用的是 GPLv3 开源许可协议。
J 语言在其官网写道,它具备高性能数据分析特性,以及用于探索性编程的强大运算符,并且内置数据库,支持处理大型的数据表(数百万行到数十亿行)。
J 语言运用可移植的 C 语言编写,可用于 Windows、Linux、Mac、iOS、Android 和 Raspberry Pi。运用 J 语言编写的程序能够非常简洁,下面是实现快速排序的示例:
sel=: adverb def u # [
quicksort=: verb define
if. 1 >: #y do. y
else.
(quicksort y <sel e),(y =sel e),quicksort y >sel e=.y{~?#y
end.
)
下面是展示隐式编程的快速排序的实现,它触及到将函数复合在一块而不显式地引用任何变量。
quicksort=: (($ (<#[), (=#[), $ (>#[)) ({~ ?@#)) ^: (1<#)
|