最近《hackers & painters》学到的印象最深的一点是:lisp比你想像中的还强大,用lisp吧!
1. 安装运行环境
a. 下载emacs,解压即可。
b. 下载slime,解压即可
c. 下载sbcl,安装
d. 配置emacs
首先需要确定emacs会加载哪里的.emacs配置文件(即emacs的HOME目录为什么),可以通过改注册表(新添注册表项HKEY_CURRENT_USER\Software\GNU\Emacs(新建一个GNU项,然后在GNU项下新建一个子项Emacs),新增一个项HOME,设置其字符串值为emacs解压后的目录)
在emacs解压后的目录中,新建一个.emacs文件,添加如下几行:
;for lisp mode
(add-to-list 'load-path "D:\\slime\\") ; 注:在windows下路径分隔符为\\而不是\,否则会被解释为 D:slime, 或者改成另外一种写法 D:/slime
(setq inferior-lisp-program "D:\\SteelBankCommonLisp\\sbcl.exe") ;注:如果此处路径有空格,在M-x slime时会出现问题:apply: Spawning child process: invalid argument
;(setq inferior-lisp-program "D:\\clisp-2.49\\clisp.exe")
(require 'slime-autoloads) ;注意这里加载的是 slime-autoloads,而不是 slime,要不然C-c C-c等很多功能都没有
(slime-setup '(slime-fancy))
;(slime-setup)
2. 编译运行
如果要进入用户交互界面,输入 M-x slime即可
如果要编译lisp文件里的函数:a. 只编译某个函数,可以将光标放在该函数上,然后按C-c C-c
The easiest is to type C-c C-c with the cursor anywhere in or immediately after the DEFUN form, which runs the command slime-compile-defun, which in turn sends the definition to Lisp to be evaluated and compiled.
b. C-c C-c只能编译单个函数,如果文件内一些函数有关联,则这种方式就不好用了,此时可以编译整个文件
(load “lisp_file”)
c. load 某个文件后,如果又修改了该文件中的某个函数,则可以再用C-c C-c编译该函数而不需要重新load该文件
posted on 2010-10-01 22:03
hex108 阅读(7910)
评论(4) 编辑 收藏 引用 所属分类:
Lisp