大神陨落,Erlang 之父 Joe Armstrong 离世
北京时间 4月20日,据Erlang Solutions、Erlang Factories的创始人Francesco Cesarini的推特称,Erlang之父Joe Armstrong于4月20日去世,享年68岁。维基百科上也更新了他的生平信息。
Francesco怀念道:“尽管他不在了,但他的工作已经打下的基础,将对未来几代人都有用的。”
Joe Armstrong 简介
1950 年 12 月 27 日,出生于英国。
17 岁接触编程,用的是 Fortran 。
就读伦敦大学物理学专业,因为个人经济原因,没读完博士就去了爱丁堡大学工作。接触的是人工智能领域的机器人研究,不巧遇到 AI Winter,参与的项目停了,丢了工作。此后转战到瑞典,做了一名物理学程序员。
1984 年,进入爱立信。开始用 Prolog 编程。工作期间用 Prolog 设计了一门新编程语言,成为 Erlang 的前身。
1987 年,所在公司爱立信发布 Erlang 正式版。
1998 年,所在公司爱立信发布 Erlang 开源版。
2003 年,获得瑞典皇家理工学院计算机科学博士学位。
2014 年起,担任瑞典皇家理工学院教授。
2019 年 4 月 20 日去世,享年 68 岁。
社区上讨论 Joe 富有智慧、风趣幽默、照顾后生,国内也有不少技术高手谈到受 Joe 影响很大。
Joe 喜欢探究问题的本质,认为在寻找问题的答案之前,要理解问题存在的原因。他广为大家喜欢的一句话是:“如果一件事情过于复杂,那么一定是哪里出了问题 —— 大部分情况下是对问题的理解出现了偏差。”
Joe 讲话很喜欢打比方,他的写作风格也深入浅出。
部分作品:
Concurrent programming in ERLANG
J Armstrong, R Virding, C Wikström, M Williams - 1993
Making reliable distributed systems in the presence of software errors(博士论文)
A history of Erlang
The development of Erlang
Joe 的 Blog:
https://joearms.github.io/#Index
Joe 的图书:
图灵社区出版了中文版《Erlang 程序设计(第2版)》
中文版网址:
http://www.ituring.com.cn/book/1264
Joe 在书的扉页上写道:
这个世界是并行的。如果希望将程序的行为设计得与真实世界物体的行为相一致,那么程序就应该具有并发结构。使用专门为并发应用设计的语言,开发将变得极为简便。Erlang 程序模拟了人类如何思考,如何交互。
编程语言 Erlang
Erlang 编程语言由 Joe Armstrong、Robert Virding 和 Mike Williams 在爱立信开发,开发这门语言是为了解决大规模高并发问题。1987 年 Erlang 正式版发布,1998 年,开源版发布。
Joe 在《Erlang 程序设计》中提到:
如果你的问题是并发的,或者正在组建多用户的系统,或者你组建的系统需要随时间而改变, 那么使用 Erlang 也许会为你节省大量的工作,因为 Erlang 就是特别为组建这些系统而设计的。
尽管相对小众,但 Erlang 设计哲学影响深远。在通信技术里,Erlang 是表示话务量强度的单位,得名于丹麦数学家 A. K. Erlang。
国内外使用 Erlang 比较知名的公司和项目
Erlang 在电信、金融、电子商务、游戏等领域有比较多的应用——
国内使用公司举例:阿里云、美团、携程、去哪儿;
国外公司举例:爱立信、Facebook、Amazon、GitHub、高盛;开源项目:RabbitMQ、CouchDB 等。