“hello, world” 起源及其他

个人博客


问题的提出

相传古时候有个退休的程序员,在家闲来无事,决定修习书法之道。第一日,备好笔墨纸砚,便挥毫写下一行大字:“hello, world”。

学过编程语言的人都笑了,在程序员心目中,hello world是一切的开始,程序语言教科书的第一个演示程序、WordPress的第一篇示例文章(我的hello world)、环境搭建成功后的第一个测试…

可是,为什么呢?为什么都用”hello, world”来做程序语言的入门程序,以及其他这一切的开始呢?

 

hello, world 起源

可能还需要解释一下什么是“hello, world”:hello world是一个简短的小程序,其功能是在显示设备上输出一行“hello, world”。几乎每一个程序设计语言的教材中的第一个范例都是hello world程序,因此在学习一门新语言的时候用hello world作为起步已经成为计算机程序界的一个传统。

hello world的起源要追溯到1972年,贝尔实验室著名研究员Brian Kernighan在撰写“B语言教程与指导 (Tutorial Introduction to the Language B)”时初次使用(程序),这是目前已知最早的在计算机著作中将hello和world一起使用的记录。之后,在1978年,他在他和Dennis Ritchie合作撰写的C语言圣经“The C Programming Language”中,延用了“hello, world”句式,作为开篇第一个程序。在这个程序里,输出的”hello, world”全部是小写,没有感叹号,逗号后有一空格。虽然之后几乎没能流传下来这个最初的格式,但从此用hello world向世界打招呼成为惯例。

有趣的是,如果你去看Brian Kernighan的wiki页面,他成果列表里的第一条,不是《C程序语言》,不是《UNIX编程环境》,而是看似不起眼的“hello world”。

迷恋 hello, world

hello world的迷人之处在于:它是简单的,即便没有任何基础,你也可以轻松理解,但它又不是苍白的,它带有一个程序语言鲜明的特色,体现了该语言最基本的思想和特征。同样也是hello world,让人体会到第一份成功的喜悦。

正因为如此,出现了各种对hello world痴迷的人,以及一些关于hello world有趣的整理:

这位同学闲来无事对hello world进行了曲线拟合。对应每个整数(0,1,2…),函数返回“Hello wrold!”相应字符对应的ascii码值。拟合函数的表达式可以点原链接查看。图案出来很帅,已经应求印制成T恤

3D Hello world: hello world in XL (Youtubu视频)
428种编程语言、63种人类语言下的hello world大全

hello world 起源

分享到:
评论加载中,请稍后...
创APP如搭积木 - 创意无限,梦想即时!
回到顶部