编程语言汽车
以前酷壳发布过《操作系统航空公司》戏谑了一下如果操作系统是航空公司会怎么样的一种情况。现在,我们来YY一下编程语言,如果编程语言是汽车,又会怎么样?
Ada 这是一辆坦克。一个很厚重但很丑的坦克,从不会崩溃。如果你告诉别人你正在驾驶Ada,别人会狂笑不已。但是,你会开着一辆跑车去打战吗?[from Amit Dubey]
汇编语言 只是一个祼露在外的引擎。你不得不自己去造车,并向其提供汽油,但你在驾车时要小心,因为他会像一只从地狱放出来的蝙蝠一样。其实,对于汇编语言,你自己才是车。[From “Subterfug” off digg.com:]
Basic 是一辆很简单的车,对于一些短途的交通比如去一些超市商店,他是很有用的。以前这是一个对初学者很流行的车,然而,近来它蜕变成脚本,而更新的车型被抛光以应对长途旅程,但那也只是新瓶装旧酒。[from Przemyslaw Wrzos]
C 是一辆赛车,它的速度是令人难以想象的快,可惜的是它每50公里就会损毁一次。
Cobol &nb ...
到处都是Unix的胎记
一说起Unix编程,不必多说,最著名的系统调用就是fork,pipe,exec,kill或是socket了(fork(2), execve(2), pipe(2), socketpair(2), select(2), kill(2), sigaction(2))这些系统调用都像是Unix编程的胎记或签名一样,表明着它来自于Unix。
下面这篇文章,将向大家展示Unix下最经典的socket的编程例子——使用fork + socket来创建一个TCP/IP的服务程序。这个编程模式很简单,首先是创建Socket,然后把其绑定在某个IP和Port上上侦听连接,接下来的一般做法是使用一个fork创建一个client服务进程再加上一个死循环用于处理和client的交互。这个模式是Unix下最经典的Socket编程例子。
下面,让我们看看用C,Ruby,Python,Perl,PHP和Haskell来实现这一例子,你会发现这些例子中的Unix的胎记。如果你想知道这些例子中的技术细节,那么,向你推荐两本经典书——《Unix高级环境编程》和《Unix网络编程》。
目录
...