8分钟
1.2.1 B语言 - Ken Thompson, 1972
首先是B语言,B语言是Go语言之父贝尔实验室的Ken Thompson早年间开发的一种通用的程序设计语言,设计目的是为了用于辅助UNIX系统的开发。但是因为B语言缺乏灵活的类型系统导致使用比较困难。后来,Ken Thompson的同事Dennis Ritchie以B语言为基础开发出了C语言,C语言提供了丰富的类型,极大地增加了语言的表达能力。到目前为止它依然是世界上最常用的程序语言之一。而B语言自从被它取代之后,则就只存在于各种文献之中,成为了历史。
目前见到的B语言版本的“Hello World”,一般认为是来自于Brian W. Kernighan编写的B语言入门教程(Go核心代码库中的第一个提交者名字正是Brian W. Kernighan),程序如下:
main() {
extrn a, b, c;
putchar(a); putchar(b); putchar(c);
putchar('!*n');
}
a 'hell';
b 'o, w';
c 'orld';
由于B语言缺乏灵活的数据类型,只能分别以a/b/c
全局变量来定义要输出的内容,并且每个变量的长度必须对齐到了4个字节(有一种写汇编语言的感觉)。然后通过多次调用putchar
函数输出字符,最后的'!*n'
表示输出一个换行的意思。
总体来说,B语言简单,功能也比较简陋。
学员评价