对于一个小学生来说,就可以轻松地计算这样的算式  3+10*5

但是对一个程序员来说,如果你想从头儿写个程序,解析并执行这个算式,你会发现就很难了。

但是,算术表达式可以更复杂,需要一个通用的程序处理方法,能将任何算术表达式转换成正确的次序来执行。

这个问题,也困住了60年前的 John Backus及其团队,他们后来发现了一种叫做Stack Evaluation的方法,解决了算式表达式的问题。

所以,John Backus 团队开发的程序也叫做公式翻译(Formula Translation),简称Fortran。

当然,Fortran不仅仅只能做公式翻译,它还引入了很多现代编程语言的特征,例如DO循环、IF语句,数组,子程序等。

尽管还很初级,但Fortran成功地满足了科学计算的需求,成为编程历史上的第一位巨头。

Fortran提供了定点数和浮点数,适合数值运算,但是不擅长处理文本,明显不适合商业用途。

此时,美国国防部想创建一个用作数据处理的、可以在各种计算机上运行的编程语言,于是便联系了格蕾丝·霍珀。

随后,美国国防部召集了一群人,组成了一个数据系统委员会,商量创建新语言。

数据系统委员会内部争吵不断,来自RCA公司的代表对主席尤其不满,他甚至做了一块墓碑,上面刻上了新语言的名字,邮寄到了五角大楼。这门语言就是COBOL(COmmon Business Oriented Language,面向通用商业语言)。

格蕾丝·霍珀(图中右下角穿军装的那位女士)对COBOL的诞生做出了杰出的贡献,也被誉为“COBOL 之母”。

COBOL放弃了算术符号,转而使用英语。

COBOL为商业数据处理做了特殊设计,特别适合操作大批量的数据,以及具有循环处理周期的数据(如打印工资支票等)。

所以,COBOL在银行、金融、保险、会计等行业占据重要地位。时至今日还有 43% 的银行用着 COBOL 系统,90% 的 ATM 交易靠 COBOL 代码运行。

不过,这门语言已经太过古老,没有多少人会了。

科学计算和商业处理都有了自己的语言,计算机的科学家们坐不住了。

1958年,美国和欧洲的计算机科学家们在瑞士举办了一次会议,决定创立一门新的语言。

这门新语言就是ALGOL,ALGOL设计得非常优雅,首次提出了块结构(begin ... end),词法作用域,嵌套函数等概念,以及IF..THEN..ELSE ,WHILE等语法,为结构化编程奠定了基础。

在ALGOL的报告中,第一次引入描述语言语法的BNF形式,成为很多编译器的基础。

但是,由于ALGOL一开始的设计目标就是描述算法,连一个标准的I/O都没有定义,导致其在商业应用上受阻。

虽然在商业应用上没有成功,但ALGOL开创的思想,影响了我们现在所熟知的编程语言,成为很多编程语言的根。

Fortran,ALGOL, COBOL就是计算机早期的编程语言三巨头。

它们三个掀起了编程语言的第一波浪潮。

几十年过去了,三巨头早已陨落,只能在遗留系统中再找到它们了。

不过,作为编程语言早期的拓荒者,他们值得所有编程语言的尊敬。

在下一波浪潮中,个人电脑将会崛起,由个人——而不是委员会——创建的编程语言将会大行其道,我们下期再见。

注:本文内容主要改编自这篇文章:

https://www.i-programmer.info/history/computer-languages/472-part-2-the-1960s.html

(完)

点击下方图片,查看更多精彩

漫画 | 编程语言三巨头的陨落相关推荐

  1. java还是c 2017_2017年9月编程语言排行榜:Java、C与C++三巨头还能统治排行榜多久?...

    [51CTO.com快译]过去16年来(自2001年起),TIOBE编程语言排行榜的三甲位置一直被Java.C与C++长期占据.C#与Python虽然已经被广泛认定为下一世代的核心编程语言,但在人气方 ...

  2. 玛氏携手阿里 天猫网罗全球快消三巨头

    本文讲的是玛氏携手阿里 天猫网罗全球快消三巨头[IT168 云计算]6月29日,玛氏公司与阿里巴巴集团签订战略合作协议,这是近3个月来,与阿里达成战略合作的第三个全球食品快消巨头. --4月,玛氏旗下 ...

  3. 分析当今(2016年12月13日)社交三巨头:微信、whatsapp、line

    前言 最近都在学习和探讨即时通讯这方面的知识,准备会写即时通讯这系列的文章,包括对其他 IM 项目的探讨,第三方即时通讯的使用到最后自己开发即时通讯的项目,其中的周期会很长,不过还是值得探研的,因为社 ...

  4. 深度学习三巨头也成了大眼萌,这个一键转换动画电影形象的网站竟因「太火」而下线...

    机器之心报道 作者:魔王.杜伟 想不想在动画电影中拥有自己的角色?这个网站一键满足你的需求,不过竟因流量太大成本过高而下线. 近期热映的电影<花木兰>总是让人回想起 1998 年上映的同名 ...

  5. Hinton,Lecun和Bengio三巨头联手再发万字长文:深度学习的昨天、今天和明天

    来源:ACM 编辑:Priscilla Emil 转自:新智元 2018年,ACM(国际计算机学会)决定将计算机领域的最高奖项图灵奖颁给Yoshua Bengio.Yann LeCun 和 Geoff ...

  6. 2020届 AAAI Fellow名单新鲜出炉!!!深度学习三巨头终于齐聚

    点击上方"深度学习技术前沿",选择"星标"公众号 资源干货,第一时间送达 AAAI 是国际人工智能领域最权威的学术组织,Fellow 是该学会给予会员的最高荣誉 ...

  7. 时隔6年,“三巨头”再度联手,发布万字长文:深度学习将通往何方?

    继2015年在Nature上发表"Deep Learning"一文以来,近期,2018年图灵奖获得者."深度学习三巨头 "Yoshua Bengio.Yann ...

  8. 三巨头共聚AAA:ICapsule没有错,LeCun看好自监督,Bengio谈注意力

    2020-02-11 15:38:14 机器之心报道 参与:思源.Jamin 深度学习三巨头在 AAAI 讲了什么?2019 版 Capsule 这条路走得对:自监督学习是未来:注意力机制是逻辑推理与 ...

  9. “三巨头”齐获图灵奖!沉浮30载终于开启AI复兴时代

    https://www.toutiao.com/a6673104365915472395/ 有"计算机界诺贝尔奖"之称的 ACM AM 图灵奖(ACM A.M. Turing Aw ...

最新文章

  1. Python内置函数之输入输出函数
  2. 一文掌握明年物联网传感器市场!2022中国AIoT产业全景图谱报告新鲜出炉
  3. 5g局域网传输速度_这个路由太牛了吧?,三步搭建局域网,接上U盘就是NAS
  4. python 单例模式的四种创建方式
  5. 白话SpringCloud | 第五章:服务容错保护(Hystrix)
  6. redis 安装使用
  7. 《数据库SQL实战》查找当前薪水详情以及部门编号dept_no
  8. python plt画半对数坐标_特征工程大传:对数变换
  9. JavaSE_04异常处理
  10. Tomcat权威指南-读书摘要系列6
  11. 【HTML5】页面点击按钮添加一行 删除一行 全选 反选 全不选
  12. 天津理工大学c语言上机题库,天津理工大学C语言上机报告题目加答案.doc
  13. http://www.cnblogs.com/ITtangtang/archive/2012/05/21/2511749.html
  14. python测试系列教程——python+Selenium+chrome自动化测试框架
  15. TypeScript笔记(5)—— 基本数据类型
  16. 怎样利用php记录时间差,使用PHP计算出时间差的实现方法
  17. w7计算机应用放大按键,Win7窗口最大化和最小化快捷键是什么
  18. 怎么用Goldwave剪辑音乐?GoldWave绿色汉化版使用教程分享
  19. 基于java的密码字典生成
  20. 扫拖地机器人预留_扫地机器人需要注意几个点?拖扫组合受追捧!

热门文章

  1. 1分钟入门接口自动化框架Karate
  2. 监控线上服务器运行情况脚本
  3. 自己做的一个打字小游戏(汇编)
  4. APP开发-使用Vue3+vant+html5+ 实现相机拍照,选取相册图片,裁剪图片以及提取图片中的文字等功能(二)
  5. 在线进行C语言编译,在线C语言编译及考试系统.doc
  6. 机器学习实战 AdaBoost预测患有疝气病的马的存活问题
  7. 美国工程师爸爸自述:我为什么让孩子学少儿编程
  8. 计算机学院辩论队招新群,适合辩论队招新的宣传标语推荐
  9. JAVA实战项目飞机大战——手把手教你轻松学会
  10. 地理定位营销有哪些不同类型?