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>intmain(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 的正式发布!

Windows Phone 7.5“Tango”ROM 曝光

据报道,下周Windows Phone7.5将登陆中国市场,热衷Windows Phone的用户可以用上日前被Xda-developers曝光的Tango ROM。据消息称,该ROM的规格为“Tango Build7.10.98.8773”,且目前仅支持HTC HD2和三星Omnia7。这款ROM主要是针对之前Windows Phone的MMS和SMS漏洞。

硬件的低端化和多语言支持将使Windows Phone7.5走向国际化的平台。我们拭目以待Tango带来更多惊喜。

编译自theverge

HP 发布 webOS 3.0.5 源码

惠普刚刚 发布 webOS 3.0.5 的源码,为 webOS 开发社区运行该操作系统的设备提供资源支持。webOS 3.0.5 是对今年1月份发布的 Touchpad 的更新版。

HP 在 1月份时宣布 webOS 开源,并发布了一份开源路线图。该路线线图显示今年9月份整个 webOS 将完全开源。而目前开源的还只是被称为社区版的 webOS。开源后选择的授权协议是 GPL 和 LGPL。

有兴趣的开发者可以从 Palm 网站上获取源码包

Web 开发者抱怨 Android 碎片化问题

Android众多的版本不仅仅让原生应用开发者苦恼,也是移动Web开发者面临的一大挑战

Android平台默认的浏览器不支持许多Web标准,难以处理动画转换等任务。Google的解决之道是移植完整版的Chrome浏览器。然而, 目前Chrome for Android只支持Android 4系统,在整个Android生态系统中只占1.5%的比重,大部分用户仍然用Android 2.3和2.2。Android 4.x流行还需要等待一段时间。试图支持Android浏览器的Web开发者不得不应付支持不同Web标准的不同浏览器。一位知名的开发者在博客上说,他最近的Web项目在一些Android 浏览器上会崩溃,而在另一些上则不会。