哭了!2020图灵奖颁给编程的回忆——Jeff Dean 的编译启蒙书(上)

简介: 刚刚,2020年图灵奖揭晓!影响了数代人的「龙书」作者——阿尔佛雷德·艾侯 (Alfred Aho)和杰弗里·戴维·乌尔曼(Jeffrey David Ullman)获奖。

沸腾了!影响了数代人的「龙书」著作者,荣获图灵奖!

刚刚,ACM授予「龙书」的两位作者——哥伦比亚大学教授阿尔佛雷德·艾侯 (Alfred Aho)和斯坦福大学教授杰弗里·戴维·乌尔曼(Jeffrey David Ullman)

1.jpg

表彰他们在编程语言实现方面基础算法和理论方面的成就,此外,两位教授还将自己的研究成果编成教材,影响、教育了几代计算机科学家和程序员。

2.jpg

Jeff Dean发推祝贺:「研究生时上编译课用了龙书,非常愉快的回忆。」

他提到的龙书就是被领域内学者奉为圭臬的《编译器设计原理》,也是艾侯和乌尔曼二人献给全世界数百万软件程序员的最佳礼物。

3.jpg

「龙书」CP:多次合著,启蒙一代代程序员

如果没有一种叫做编译器的重要软件开发工具,我们就会陷入机器代码喃喃自语的世界,然后才能控制计算机。

这就是为什么帮助开发编译器的两位研究人员,艾侯乌尔曼,获得了2020年图灵奖。

4.jpg

为现代编程语言做这种编译的大部分技术都要归功于艾侯和乌尔曼。

故事开始于1967年,在贝尔实验室,艾侯和乌尔曼塑造了编程语言理论和实现的基础,以及算法设计和分析。

他们通过技术贡献和有影响力的教科书,对编程语言编译器做出了奠基性贡献。

二人在算法设计和分析技术方面的早期合作,也为这一时期出现的计算机科学理论核心做出了重要贡献。

艾侯和乌尔曼一起写了很多本书,比如:

The Theory of Parsing, Translation, and Compiling:1-2,1972,1973

The Design and Analysis of Computer Algorithms,1974

《编译器设计原理》(Principles of Compiler Design),1977

Data Structures and Algorithms, 1983.

《编译.原理.技术与工具》(Compilers: Principles, Techniques, and Tools) 1986.

Foundations of Computer Science, 1992.

其中,他们最广为人知的两本书:

《计算机算法的设计与分析》(1974年)The Design and Analysis of Computer Algorithms


5.jpg
本书被认为是该领域的经典之作,是十多年来计算机科学研究中被引用最多的书籍之一。在计算机科学还是一个新兴领域的时候,它就成为全世界算法课程的标准教材。该书还引入了随机存取机(RAM)作为利用递归关系分析计算机算法的时间和空间复杂性的基本模型。RAM模型还将不同的单个算法编成了一般的设计方法。

另外,龙书——《编译器设计原理》(1977年)Principles of Compiler Design


6.jpg


本书被认为是该领域的经典之作,是十多年来计算机科学研究中被引用最多的书籍之一。在计算机科学还是一个新兴领域的时候,它就成为全世界算法课程的标准教材。该书还引入了随机存取机(RAM)作为利用递归关系分析计算机算法的时间和空间复杂性的基本模型。RAM模型还将不同的单个算法编成了一般的设计方法。

另外,龙书——《编译器设计原理》(1977年)Principles of Compiler Design

7.jpg

他目前主要研究量子计算、编程语言、编译器和算法。

艾侯教授拥有多伦多大学工程物理学学士学位和普林斯顿大学电气工程/计算机科学博士学位,他曾获得IEEE冯·诺伊曼奖,也是美国国家工程学会和美国艺术与科学学会的成员,还是加拿大皇家学会会员。

8.jpg


相关文章
|
JavaScript 小程序 前端开发
【手把手教教学物联网项目】01 视频大纲
《手把手教教学物联网项目》是一系列视频教程,旨在引导初学者掌握物联网技术。视频涵盖物联网基础,如物联网概述、架构和技术;STM32微控制器的介绍、编程及外设使用;网关开发,涉及ESP8266和ESP32;物联网通信协议如TCP、MQTT、Modbus等;物联网总线协议如单总线、CAN、IIC和SPI;OLED显示原理与驱动;MQTT服务器搭建;物联网云平台介绍,包括阿里云平台的使用;微信小程序开发入门及前端VUE项目实践。此外,教程还涉及UniAPP和SpringBoot后台开发,最后通过“智能取餐柜”项目将理论知识付诸实践。视频可在B站找到,适合学生、爱好者和开发人员学习物联网技术。
1084 12
【手把手教教学物联网项目】01 视频大纲
|
存储 JSON Prometheus
如何精简 Prometheus 的指标和存储占用
如何精简 Prometheus 的指标和存储占用
|
3月前
|
存储 安全 开发工具
如何安全删除GitHub中的敏感文件?git-filter-repo操作全解析
当敏感文件误传至GitHub时,需使用`git-filter-repo`彻底删除文件及历史记录。本文详解操作步骤与注意事项,如备份、强制推送、团队协作处理,并建议搭配高安全性云服务,防止数据泄露,保障代码仓库安全。
282 1
|
5月前
|
机器学习/深度学习 算法 安全
深度长文I 深度合成服务类-算法备案该怎么做?
本文详解“深度合成服务类”算法及其备案要求,涵盖定义、类型、备案流程等内容,助你全面理解合规要点。
|
TensorFlow 算法框架/工具 Swift
魔搭的notebook再次打开时swift导入失败
每次重新打开Notebook时,系统会显示一系列警告和错误信息。主要问题是当前安装的Keras版本为Keras 3,而Transformers库尚不支持该版本。解决方法是安装与Transformers兼容的`tf-keras`包,命令为`pip install tf-keras`,但pip后仍然报错
|
人工智能 自然语言处理 监控
PMP认证有哪些要求:干货分享
本文详细介绍PMP的报考要求、考试内容与形式、认证有效期及价值,以及备考策略和推荐的学习工具,帮助考生高效准备。
589 2
|
数据采集 API 开发者
拼多多API接口怎么申请
拼多多API接口申请步骤简述:首先访问拼多多开放平台并注册账号,选择开发者类型并填写资料,审核通过后创建应用并申请API接口权限,等待审核结果,获取API密钥等信息。完成后,即可使用拼多多API接口进行开发,注意遵守相关规定。
|
安全 区块链 数据安全/隐私保护
《区块链公链数据分析简易速速上手小册》第1章:区块链基础(2024 最新版)
《区块链公链数据分析简易速速上手小册》第1章:区块链基础(2024 最新版)
332 0
|
人工智能 大数据 区块链
|
机器学习/深度学习 自然语言处理 语音技术
使用Python实现深度学习模型:智能语音助手与家庭管理
使用Python实现深度学习模型:智能语音助手与家庭管理
499 0