Haskell创始人之一Paul Hudak去世
来自耶鲁大学的消息,该校教授、ACM Fellow、Haskell 语言的创造者之一 Paul Hudak(学校页面)于 4 月 29 日夜里去世,享年 62 岁。他 2009 年被诊断出白血病,2010 年做了干细胞移植。
Paul Hudak 生于 1952 年 7 月 15 日,在美国巴尔的摩长大。1973 年在 Vanderbilt 大学获得电机工程学学士学位。一年后在 MIT 获得计算机科学硕士,论文是理解音乐的一种模型。8 年后获得犹他大学计算机科学博士学位,论文题目是:Object and Task Reclamation in Distributed Applicative Processing Systems(分布式应用处理系统中的对象与任务回收)。此后基本上一直在耶鲁大学从事教学和科研工作。
他在计算机科学方面的主要贡献,是函数式语言,尤其是 Haskell。Haskell 是很受尊敬的通用纯虚函数式语言,也被称为委员会设计得最好的语言,因为从一开始 1990 年前后,它就是由一群函数式语言学者群策群力、共同设计的。1.x 阶段大约 12 人,到 Haskell 98 设计者多达 20 多人。但其中 Paul Hudak 是有力者,他也是很多报告的第一作者。*
另外,他的 The Haskell School of Expression 一书是公认的名著。他也是基于 Haskell 的计算机音乐领域特定语言 Euterpea 的开发者之一。
Haskell 语言学术味道比较重,在学院拥趸众多(以至于新加坡总理李显龙都 说退休后要去学),但平时学过用过的程序员不常见(尤其在中国)。不过,要说起它对其他语言的影响,那就非常恐怖了,C++11 中的 Concepts、C#中的 LINQ、Java 中的泛型、Scala、CoffeeScript、F#、Python、Swift……都曾从中受惠。
当然,Haskell 在工业界其实也有很多应用,最集中的是在金融界的高频交易,干这事儿的 Haskell 程序员工资可相当不低(据说年薪百万很普通)。在互联网和软件公司也不是特别稀奇,Google、非死book、微软、爱立信、高通等都有。之前介绍 过的微软开源数据格式化框架 Bond 就是完全用 Haskell 写的。这个页面收集得很多:https://wiki.haskell.org/Haskellinindustry,可以参考。
Paul Hudak 还有一项成就,现在越来越成为技术热点和趋势。那就是他 1997 年与 Conal Elliott 合作的一篇论文中提出的 Functional reactive programming(函数式响应式编程,简称 FRP) 。也就是用函数式语言特性(map, reduce, filter)来对异步的数据流编程,特别适合现在越来越多要求分布式、可扩展、消息驱动的应用。
(刚才查这篇原始论文时偶然发现,论文第一作者 Conal Elliott 居然因为公司倒闭而失业了,在找工作呢。
FRP 方面,可以参考这几个页面:
- http://berb.github.io/diploma-thesis/original/ 内容比较全的论文
- https://medium.com/reactive-programming/what-is-reactive-programming-bc9fa7f4a7fc 读起来比较轻松的入门文章
- http://stackoverflow.com/questions/1028250/what-is-functional-reactive-programming 问答
- http://paulstovell.com/blog/reactive-programming 概念
耶鲁大学的通告里提及,他生前喜爱爵士乐,热心运动,喜欢登山、滑雪、漂流,还担任高中曲棍球队的教练。另外,他的一个女儿 Jen Hudak 继承了运动基因,是职业自由U型滑雪运动员,拿过两次世界极限运动会金牌。
Hacker News 上的讨论:
Infoq 对 Hudak 的采访:http://www.infoq.com/cn/interviews/paul-hudak-haskell