My first common lisp program

已经不记得自己第一个Perl程序是什么样子了,更不用说第一个C++程序了。那个时候,还没有什么版本控制概念,当然也没有自己的网站。哪像现在,是个东西就想塞进subversion里。

我的一个common lisp程序是一个推箱子游戏求解程序,参见http://www.wanglianghome.org/svn/pushbox/。不用等到几年后再回过头来看,现在我就知道这程序写得相当烂,尽管居然还有40多个单元测试。But it works! 🙂

这个程序还有相当多应该改进的地方,不断完善的过程,也是我不断提高编写common lisp程序水平的过程,就用它来做个见证吧。

Declaring .emacs bankruptcy

看过人家的Declaring .emacs Backruptcy,就想做同样的事。一共有三台电脑,分别装了fedora, ubuntu和XP,XP上装了Cygwin,并且自己编译了Emacs 22。同时维护三台机器上的.emacs文件,不胜其烦。经过漫长的拖延,我终于完成了这项任务,完整的配置参见https://svn.wanglianghome.org/elisp/

由于我对elisp的理解有限,所以基本是照猫画虎,按照上文中提到的方式重新整理了.emacs文件。在最完美的情况下,.emacs文件里只需添加两行,比如在fedora上:

(add-to-list 'load-path "~/elisp")
(require 'wl-fedora-init)

由于三个平台上均没有最新版的SLIME,所以我把它也放到自己的版本控制之中,其他模块则在各自平台上分别下载安装。