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

来源:谷奥 作者:谷奥
  

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

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

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

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

main( ) {
 extrn a, b, c;
 putchar(a); putchar(b); putchar(c); putchar('!*n');
}

a 'hell';
b 'o, w';
c 'orld';

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

main() {
 printf("hello, world");
}

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

#include <stdio.h>

main()
{
        printf("hello, world\n");
}

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

#include <stdio.h>

int
main(void)
{
        printf("hello, world\n");
        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 的正式发布!


时间:2012-03-16 13:37 来源:谷奥 作者:谷奥 原文链接

好文,顶一下
(0)
0%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量