英雄杀里面的台词

刘伯温:
大梦谁先觉,平生我自知。
半似日兮半似月,曾被金龙咬一缺。
斗转星移,万物乾坤。
最危险的就是最安全的。
残孽啊!
知天命,尽人事。
陈圆圆:
你们两个谁更厉害?
比武招亲啦。
小女子有礼啦。
再给一张嘛。
我还是削发为尼吧…
三桂… …

- 阅读剩余部分 -

聂小无

这是一个傻小子闯江湖的故事。在这个杀手横行的时代,小刀是三流杀手的徒弟,机缘巧合下他被人误以为是江湖上顶尖杀手聂小无,并被迫闯荡江湖。在经历了千番辗转,尝遍了万般辛酸,结识了几多高人之后,小刀创立了江湖新锐帮派“打狗帮”,在和二帮主小麻子共结连理、想进一步将“打狗帮”发扬光大之际,却卷入了一场武林阴谋……

这是一个杀手横行的时代,而顶级杀手只有一个——传说中的聂小无。
聂小无成了所有人,包括三流以下直到不入流的杀手们的超级偶像和奋斗目标。所有杀手都希望有朝一日自己、自己的儿女或自己的徒弟能够成为单人版聂小无,或得到聂小无的指点,或者至少能与聂小无有一面之缘;女杀手则幻想一夜之情,也就不枉此生做杀手了。
我和我的师父、师哥、师妹当然也一样,在谈起聂小列时总是呼吸急促、两眼放光、两颧潮红,然后心潮澎湃,在寒冷的冬天甚至比烤火更有效地取暖。
是的,我爱这个时代,爱所有的杀手,而最爱的永远是聂小无……
有人说是一个杀手,也有人说是一个杀手组织合,甚至有人说其实是一个杀手组织,百我常常觉得在这个杀手横行的时代,聂小元,就是江湖。

- 阅读剩余部分 -

什么是语义学

很多人问我如何在掌握基本的程序语言技能之后进入“语义学”的学习。现在我就简单介绍一下什么是“语义”,然后推荐一本入门的书。这里我说的“语义”主要是针对程序语言,不过自然语言里的语义,其实本质上也是一样的。

一个程序的“语义”通常是由另一个程序决定的,这另一个程序叫做“解释器”(interpreter)。程序只是一个数据结构,通常表示为语法树(abstract syntax tree)或者指令序列。这个数据结构本身其实没有意义,是解释器让它产生了意义。对同一个程序可以有不同的解释,就像上面这幅图,对画面元素的不同解释,可以看到不同的内容(少女或者老妇)。

解释器接受一个“程序”(program),输出一个“值”(value)。用图形的方法表示,解释器看起来就像一个箭头:程序 ===> 值。这个所谓的“值”可以具有非常广泛的含义。它可能是一个整数,一个字符串,也有可能是更加奇妙的东西。

- 阅读剩余部分 -

解密“设计模式”

有些人问我,你说学习操作系统的最好办法是学习程序设计。那我们是不是应该学习一些“设计模式”(design patterns)。这是一个我很早就有定论,而且经过实践检验的问题,所以想在这里做一个总结。

  总的来说,如果光从字面上讲,程序里总是有一些“模式”可以发掘的。因为你总是可以借鉴以前的经验,来构造新的程序。你可以把这种“经验”叫做“模式”。可是自从《设计模式》(通常叫做 GoF,“Gang of Four”)这本书在 1994 年发表以来,“设计模式”这个词有了新的,扭曲的含义。它变成了一种教条,带来了公司里程序的严重复杂化。

- 阅读剩余部分 -

谈 Linux,Windows 和 Mac

这段时间受到很多人的来信。他们看了我很早以前写的推崇 Linux 的文章,想知道如何“抛弃 Windows,学习 Linux”。天知道他们在哪里找到那么老的文章,真是好事不出门…… 我觉得我有责任消除我以前的文章对人的误导,洗清我这个“Linux 狂热分子”的恶名。我觉得我已经写过一些澄清的文章了,可是怎么还是有人来信问 Linux 的问题。也许因为感觉到“舆论压力”,我把文章都删了。

简言之,我想对那些觉得 Linux 永远也学不会的“菜鸟”们说:

Linux 和 Unix 里面包含了一些非常糟糕的设计。不要被 Unix 的教条主义者吓倒。学不会有些东西很多时候不是你的错,而是 Linux 的错,是“Unix 思想” 的错。不要浪费时间去学习太多工具的用法,钻研稀奇古怪的命令行。那些貌似难的,复杂的东西,特别要小心分析。

Windows 避免了 Unix,Linux 和 Mac OS X 的很多问题。微软是值得尊敬的公司,是真正在乎程序开发工具的公司。我收回曾经对微软的鄙视态度。请菜鸟们吸收 Windows 设计里面好的东西。另外 Visual Studio 是非常好的工具,会带来编程效率的大幅度提升。请不要歧视 IDE。要正视 Emacs,VIM 等文本编辑器的局限性。当然,这些正面评价不等于说你应该为微软工作。就像我喜欢 iPhone,但是却不一定想给 Apple 工作一样。

学习操作系统最好的办法是学会(真正的)程序设计思想,而不是去“学习”各种古怪的工具。所有操作系统,数据库,Internet,以至于 WEB 的设计思想(和缺陷),几乎都能用程序语言的思想简单的解释。

- 阅读剩余部分 -