“hello, world” 起源及其他

/** 感谢@tifan同学慷慨提供收容,考据癖搬出原来墙外住址,目前恢复正常访问
* 刚搬家,都来不及收拾,到处凌乱,css显示也很不正常,定于近期整改,见谅、见谅
* 先献文一篇,择日大扫除,谢这段时间来各位的容忍与支持!
* i404 敬上
*/

问题的提出

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

  • http://twitter.com/nevercry nevercry

    恭喜! 我把代理规则里你的地址给删了。

  • http://localhost-8080.com i404

    谢啦~这段时间也多亏有你鼓励,其实我也懒得跟功夫网折腾…

  • Andrewhxism

    能访问呢?

  • http://localhost-8080.com i404

    现在已经恢复正常访问了~

  • 丕子

    文章不错 域名更不错

    • http://localhost-8080.com i404

      谢谢夸奖 :)

  • manson911

    hello,world原来这么来的。

  • Bugaosuni

    我也有类似嗜好,你有微博吗?加我:t.sina.com.cn/w3china

  • Anybots

    域名太酷了,另外,print一般我用:”hi,bitch”。

  • Pingback: “Hello World”的若干种境界 | Z.Hao : My Blog()

  • lpylzx1

    c语言不用任何括号输出hello world有人会么

  • http://www.ipz.me sh3dowin

    以后和同学讨论起这个问题可以吹牛了,哈哈哈~