我写了一些 Elisp 的程序,可以参考 Emacs 一个强大的平台
用于程序启动的时候,读取配置参数. 也可以作为通用的文件存储结构,类似 XML 的功能
编写服务器程序,经常要写日志文件,syslog 是一种比较灵活的方式,这个例子介绍了 使用 syslog 的程序。
这是一个建立 UDP socket 的例子程序。这个 UDP socket 不同于一般常用的 UDP socket , 他调用了 connect 函数,让 UDP socket 可以专门和某一个主机通信。 至于为什么 UDP 也可以是 "有连接的" , 参见 SocketNote
这个程序可以用来建立点对多点 UDP 通信模型. 在编写 MGCP 等类似的 UDP 的通信程序的时候, 会碰到一个问题,就是只有一 个 socket 和所有的client 通信,每次接收 packet 的时候,都 要判断是谁发过来的 packet ,然后把packet 分发到不同的处理 程序中. UDP Server 解决这个问题, Server 端程序中对每一个 client 的处理函数有单独的 file descriptor or socket 用来 和 client 通信.
学习 Lisp 之后,对 Lisp 优美的程序留下很深印象, C 语言的 程序也可以从中模仿一些东西, 例如:
;; 对 list 倒序 (reduce 'cons a-list nil) ;; 对 list 求和 (reduce '+ a-list 0)
由于 C 语言的限制,没有办法提供动态类型和垃圾回收,需要大量的类型转换和内存管理.