Go语言源码可追溯到1972 年?

开发 前端
Go语言团队已经在本周三发布了第一个发布候选版 Go 1 RC1(即 Beta4),正式版的发布已经为期不远。地鼠(gopher)们该行动起来啦!

周四就有地鼠提问,“Go 源码中几十年前的那些修订是什嘛情况哦?”

原来,Go 代码库的最初四次修订发生于 1972-1988 年,然后才有了 Go 语言规范的初稿。

其中,***次修订 Revision f6182e5abf5e (1972) 是 Brian Kernighan《B 语言入门教程》第七节中的“hello, world!”示例代码:

  1. main( ) { 
  2.  extrn a, b, c; 
  3.  putchar(a); putchar(b); putchar(c); putchar('!*n'); 
  4.  
  5. a 'hell'; 
  6. b 'o, w'; 
  7. c 'orld'; 

第二次修订 Revision b66d0bf8da3e (1974) 将程序用 C 语言重写了一遍,当年 Unix 内核的主要部分已经采用 C 重新编写:

  1. main() { 
  2.  printf("hello, world"); 

第三次修订 Revision ac3363d7e788 (1988) 按 ANSI C 草案的标准加上了 #include 语句,并补上了漏掉的换行符:

  1. #include <stdio.h> 
  2.  
  3. main() 
  4.         printf("hello, world\n"); 

第四次修订 Revision 172d32922e72 (1988) 则给程序加上了输入原型与返回值:

  1. #include <stdio.h> 
  2.  
  3. int 
  4. main(void) 
  5.         printf("hello, world\n"); 
  6.         return 0; 

(次年,标准 C89(ANSI X3.159-1989)诞生。)

这四次修订重现了编程语言由 B 到标准化的 C 的发展史,也显示了项目组的宏伟抱负。当然,Go 团队本身也是大有来头,其中就包括 B 语言与 Unix 作者 Kenneth Thompson 和 Plan 9 架构师 Rob Pike,他俩都曾在贝尔实验室工作,并共同完成了 UTF-8 编码的创立。(via cnet)在 Go 语言中,Ken Thompson 还弥补了没能在 Unix 中“拼全‘create’”的遗憾。(via mattn)

Go 公布初期就提供了 cgo 命令以及 gcc 前端 gccgo,可以说 Go 本身就是对历代成果 fork 而来的项目。

敬请期待 Go 的正式发布!

原文出自:http://www.guao.hk/

【编辑推荐】

  1. 谷歌发布Go编程语言***候选版
  2. 用Google Go语言实现http共享
  3. Google Web App开发指南之构建优秀的Web Apps
  4. Google Web App开发指南:交互设计
  5. Google Web App开发指南:什么是Web Apps?
责任编辑:陈贻新 来源: 谷奥
相关推荐

2021-12-30 10:29:52

微软Windows 11更新

2023-05-20 11:19:44

微软HDDSSD

2021-12-30 14:17:23

微软WindowsWindows 11

2019-11-29 08:17:36

区块链农产品比特币

2024-01-09 15:46:42

2019-02-26 08:14:41

大数据HadoopSpark

2015-09-22 09:32:34

机房半导体

2011-06-14 11:48:38

Webkit QT

2014-02-18 09:24:34

2023-11-27 16:21:09

2017-04-25 14:25:36

疫苗数字化门诊信息化平台

2015-04-16 09:13:52

2023-05-16 16:35:40

人工智能智能管理质量管理

2017-04-10 13:26:06

Go语言源码

2017-04-10 20:21:39

Go语言源码分析Handler

2020-07-02 15:47:59

IBM区块链挪威海鲜协会

2020-02-13 15:01:54

区块链疫情防控

2021-07-02 06:34:53

Go语言sysmon

2019-05-10 08:19:48

Mirai僵尸网络

2020-11-24 09:55:37

编程语言C ++Vasa
点赞
收藏

51CTO技术栈公众号