青岛方言喝啤酒怎么说_编程的头十年:说方言
青岛方言喝啤酒怎么说
非常个人化的编程历史的第一章第二部分
说方言
1957年,FORTRAN(公式转换)使人们可以通过编写与人为逻辑的程序来编写程序,而不必记住困难的操作码。
人类可读(和相关)编程语言的工作方式是采用一种概念,例如打印出某种东西,就像我们在上面看到的那样,它需要十几行汇编代码,并将该概念抽象为一个保留字 。 保留字与二进制或十六进制字不同。 保留字是人类语言代码字,代表计算机字中的整个句子。 对于FORTRAN,替换上面大多数汇编程序的保留字是“ write”。
一个叫做编译器的特殊程序将“写入”扩展为十六行汇编语言,并将其他保留字扩展为它们各自的汇编语言等效项。
正如我们将很快看到的,许多早期的程序员不喜欢编译器。 他们不相信他们能像人类一样出色地完成工作。 从一开始就可能有其优点,但是多年来,人们将更多的“智能”转移到了编译器中。 另外,随着计算机容量的增加,程序也变得越来越大,越来越复杂。 现代程序员几乎不可能击败编译器,而且没有人真正尝试过。
但是在过去,即使使用编译器,程序员也仍然“接近”金属。 他们通常知道编译器在做什么,当以人类可读的语言“看到”某些模式时,编译器会做出什么“选择”。 优秀的程序员将以特定的方式编写其人类可读的代码,以迫使编译器“做正确的事”。
这是FORTRAN中的“ Hello World”程序:
1 implicit none2 write ( *, ‘(a)’ ) ‘ Hello, world!’3 stop4 end
如您所见,用FORTRAN编写可以减少所需的编程语句数量。 平均减少20倍。
编程生产率的提高是一个数量级,因为程序越长或越复杂,生产率的提高就越显着。 我给你的例子很简短。 对于较大的程序(成千上万的行),差异要大得多。 写五百行而不是一万行比写四行而不是十六行大得多。
几年前,格雷斯·霍珀(Grace Hopper)创建了一种称为FLOW-MATIC的商业用语言,因为她相信人们应该能够使用纯英语对计算机编程,并使计算机将英语单词本身转换成机器指令。 很少有人听说过FLOW-MATIC,但是很多人听说过COBOL(面向COmmon业务的语言),该语言很大程度上基于FLOW-MATIC,并且被许多人认为比FORTRAN更具可读性。
1 IDENTIFICATION DIVISION.2 PROGRAM-ID. HELLO-WORLD.3 * simple hello world program4 PROCEDURE DIVISION.5 DISPLAY ‘Hello world!’.6 STOP RUN.
必须说,许多程序员不喜欢COBOL程序,因为它们过于冗长,这可能会导致生产率下降。
麻省理工学院的术语表⁷这样说:
COBOL手指/ koh'bol fing'grz / n。 来自瑞典的报道称,一种(假想的)疾病可能源于COBOL编码。 该语言要求代码出于所有原因而冗长(请参见Candygrammar); 因此,据称在COBOL中编程过多会导致无数次打字而使手指磨损。 “我拒绝再次键入所有源代码; 它会给我COBOL手指!”
尽管如此,使更多的人可以访问程序构成了整体生产率的提高,并且它的代码仍比汇编少得多。
在五十年代末期,同时出现了另外两种有影响力的语言:LISP和ALGOL(ALGO语言),LISP有时在今天仍用于AI(人工智能)编程。
当今几乎所有常用的语言都不是FORTRAN或COBOL的后代,而是ALGOL的后代(有时会产生一点LISP影响)。 但是这些后代只会在二十年后开始出现,下一个十年属于计算机制造商和电气工程师。 他们将不通过语言而是通过硬件和操作系统来提高编程效率。
“这是一种比其时代遥遥领先的语言,它不仅是对其前辈的一种改进,而且几乎是对其所有继承者的一种改进。”⁸
〜查尔斯·安东尼·理查德·霍尔爵士
图灵获奖计算机科学家
谈论ALGOL
<-上一篇文章系列
系列下一篇->
[1]我将在第四章中深入解释抽象在计算中的含义。
[2]“的行话文件是一个词汇表和使用词典的计算机程序员 俚语 。 原始的术语表是来自诸如MIT AI Lab , 斯坦福AI Lab (SAIL)以及旧的ARPANET AI / LISP / PDP-10社区(包括Bolt,Beranek和Newman , 卡耐基梅隆 大学 )等其他技术文化的术语的集合。 大学和伍斯特工业学院 ”。 https://zh.wikipedia.org/wiki/Jargon_File
全文可从http://catb.org/jargon/html/index.html获得 。 当我处于幼体阶段时,我怀着虔诚的热情阅读。 您可以在行话档案中查找幼虫阶段 。
[3] CAR Hoare。 1973年。 《编程语言设计的提示》 。 技术报告。 美国加利福尼亚州斯坦福市的斯坦福大学。
本文摘自我即将出版的《混沌工厂》 ,该书解释了为什么大多数公司和政府无法编写“有效”的软件,以及如何对其进行修复。
翻译自: https://hackernoon.com/the-first-decade-of-programming-speaking-in-tongues-f395a228cf35
青岛方言喝啤酒怎么说
青岛方言喝啤酒怎么说_编程的头十年:说方言相关推荐
- c语言每瓶啤酒2元答案,【原创源码】C语言 一个喝啤酒小游戏的编程实现(菜鸟级)...
[C] 纯文本查看 复制代码#include int main() { int i, btle=0, tap=0, num, n, iTemp; //btle是瓶子,tap是瓶盖(忘了瓶盖是哪个单词了 ...
- 污水处理厂不仅能“喝”啤酒,还能“穿”绿衣,“吃”糖果
"喝"啤酒,"穿"绿衣,"吃"糖果是青岛.常州.深圳等地污水处理厂的新举措,只为更好的进行节能减排.随着城市建设的迅速发展,每年都有大量新建 ...
- 作业调度算法--高响应比优先 操作系统_处理器管理_编程题
操作系统_处理器管理_编程题 作业调度算法–高响应比优先 输入N个作业,输入每个的作业名字,到达的时间,服务的时间,根据高响应比优先算法,计算出每个作业的完成的时间,周转的时间,带权周转的时间(其中保 ...
- 作业调度算法--短作业优先 操作系统_处理器管理_编程题
操作系统_处理器管理_编程题 作业调度算法–短作业优先 输入N个作业,输入每个的作业名字,到达的时间,服务的时间,根据短作业优先算法,计算出每个作业的完成的时间,周转的时间,带权周转的时间(其中保留2 ...
- linuxmint安装开发工具_vscode如何安装在Linuxmint系统_编程开发工具
vscode怎么退出当前终端_编程开发工具 vscode退出当前终端的方法:1.使用"Ctrl+C"快捷键停止node环境终端.2.使用"exit"命令停止ss ...
- java可以用vs编程吗_vscode可以写java么_编程开发工具
如何在ubuntu 18.04上安装 composer_编程开发工具 下面由composer教程栏目给大家介绍在ubuntu 18.04上安装 composer的方法,希望对需要的朋友有所帮助!全局 ...
- c vscode 高亮,vscode设置代码字体颜色高亮_编程开发工具
vscode如何恢复默认设置_编程开发工具 vscode恢复默认设置的方法是:1.首先点击左下角,打开设置:2.然后点击右上角[{}]按钮:3.最后将右侧的用户设置json全部清空即可恢复默认设置. ...
- vscode里面如何配置库_怎么为vscode添加库文件_编程开发工具
vscode怎么运行出结果_编程开发工具 vscode运行出结果的方法:首先打开vscode软件:然后在vscode插件中搜索"Code Runner"进行安装:接着用鼠标进行右键 ...
- vscode如何运行python文件_vscode怎么运行.py文件_编程开发工具
vscode背景图怎么换_编程开发工具 vscode中更换背景图的方法:安装background插件,然后进入User Settings用户设置,在搜索框中搜索background进入配置文件,在ba ...
最新文章
- [转]HTTP协议详解
- c语言对n个数选择排序_选择排序法 -- C语言
- 8个超好用的Python内置函数
- openCV3学习笔记一,图像的加载,修改,保存
- macosx php环境,MacOSX环境下MAMP安装配置PHP的开发环境
- 计算长方体体积编程_如何求N个球体在空间中所占的体积?
- 计算机网络7种类型,OSPF中7种类型LSA
- 如何在 iPhone 和 iPad 上关闭 Spotlight 建议?
- 免费分享一套详细的Hadoop学习视频
- 基于pytorch+Resnet101加GPT搭建AI玩王者荣耀
- lidar/imu组合slam相关文章
- 串口通讯---实现 PC 端之间串口连接传输文件
- 【CKA考试笔记】十一、job、cornjob
- 数学建模中各种评价类模型的优点和缺点总结
- 爬虫入门(3)——拉钩网
- 拼多多秒杀活动的谣言
- Velodyne VLP16激光雷达的使用(非常详细)
- 【音视频技术】AVC H264的一些基本概念和知识点
- 性能服务器主板如何进bois,各种主板进入BIOS设置的图文教程
- 前端报错Unknown custom element