一本Lisp编程入门的好书
2012-09-07
如果让我给别人推荐一款软件,我就推荐emacs;
如果让我给别人推荐一门语言,我就推荐emacs lisp.
用emacs纯粹是因为vim用久了,手指头老疼,就想换一款编辑器,不同的键盘布局,能缓解手上的毛病,咱还想在这一行干一辈子呢,底心疼自个儿啊。
首先读了Learning GNU Emacs (有大师Eric Raymond参与编写),熟悉了emacs的基本操作后,开始读的这本GNU Emacs Lisp,本想随便翻翻,会配置.emacs就得了,没成想,越读越惊讶,越读越高兴,简直有醍醐灌顶,大彻大悟的感觉,越来越喜欢emacs了。
1. emacs是IDE的鼻祖
有个笑话是说,emacs提供了一切,除了一个文本编辑器。
emacs可以说把操作系统隐藏起来了,就像现在flash和browser干的事情,你不必关心平台是什么,只需要面对你要编辑的内容即可。最重要的是你不需要离开emacs去执行命令,这一点非常重要,这让你感觉emacs就是os,os就是emacs。
2. c-x c-e
如果你尝试过在emacs中写emacs lisp代码,你会由衷的说,这太他妈爽了,我可以边写,边测,快速构建我的程序,再不需要什么make,ant,F5,ctrl-z perl xx.pl等七七八八的东西了;真希望每个编程语言都能做到这一点。而且你可以在不同mode中切换,这可以在你写c/perl/java代码时,用emacs lisp当作你的代码生成器。
c-h f让你读emacs代码更轻松,终于不用满世界查文档了。
3. 境界
为了不引起editor口水战,就不提其他编辑器了。
emacs主要是由lisp构建的,lisp是函数式语言,函数式语言的核心思想是集合操作,在lisp中浸淫越深,越是脱离了低级趣味,眼界大开,这时候你的眼里再不是一棵树,一根草,而是整个亚马逊丛林。