最近在阅读sicp这本书,书中的代码是使用scheme
实现的。以前阅读的时候是使用Dr.Racket
来完成写练习的,可我以为与其这样,不如一步到位,使用emacs+lisp
解释器来的比较快。html
直接点击官方教程点我查看,上面讲解的十分清楚,基本上不一样系统的安装方式大同小异,下载后点击运行,仍是很简单的吧。linux
lisp有无数种实现的版本,这里我使用的是Racket
,由于我以前电脑上就有Dr.Racket
因此不用下载,若是你没有的话,能够点击Racket下载地址,选择合适系统的版本进行下载,固然你也能够选择其余lisp方言的实现版本,例如Petite Chez Scheme下载地址。下载完解压便可。git
下载完毕后,你能够获得这样的一些程序github
接着设置将上图解释器所在的文件夹路径设置到系统路径中(windows=环境变量,mac/linux=$path
),接着在终端敲击racket --version
来检查是否设置成功。若是出现如下信息,你就成功了。编程
咱们须要安装简单的几个插件来帮助咱们高效的编写和运行代码。windows
和linux安装软件相似,这里咱们设置MELPA
的安装源,这样咱们就能够一键安装代码了,十分方便。
鉴于国外访问速度很慢,咱们这里使用国内的镜像源,这里要感谢一直维护自由软件的人,不然这些工具的设置与配置哪里会有这么容易和便捷:)工具
emacs
中全部的配置都在~/.emacs
这个文件中,对于windows,就是在C盘的我的目录文件夹下。咱们能够经过编辑这个文件来对emacs进行一些自定义的配置。打开.emacs文件,在文件的末尾加上如下配置,设置咱们的插件安装源。ui
;; melpa 安装源 (require 'package) (add-to-list 'package-archives '("melpa" . "http://elpa.emacs-china.org/melpa/") t) (package-initialize)
这样就能够方便的安装插件了。.net
Racket-mode
很好用,执行代码,高亮,提示,反正我以为该有的都OK,下面就进行安装。
使用如下命令M-x package-install <ret> racket-mode
,M表明alt
组合键的意思,ret
表明回车,因此该命令实际上就是插件
alt+x
打开命令模式package-install
(能够用空格键/tab来提示),回车racket-mode
,回车确认,等待安装完毕。怎么样,很简单吧。
安装完毕后,在配置文件.emacs
配置文件中增长如下代码的配置
;;racket配置,设置解释器,自动补全,代码执行等 (require 'racket-mode) (setq racket-racket-program "racket") (setq racket-raco-program "raco") (add-hook 'racket-mode-hook (lambda () (define-key racket-mode-map (kbd "C-x C-j") 'racket-run))) (setq tab-always-indent 'complete)
ParEdit
是一款让你半结构化编辑lisp的插件,例如括号的自动补全,s-表达式的转移,提取等等,仍是很方便的。
一样使用M-x package-install <ret> paredit-mode
进行安装便可。
具体的使用方法不是本篇文章的重点,能够参考如下几篇文章
所有设置完毕后,咱们新建一个文件(ctrl+x 回车 i 回车 输入文件名
),输入如下代码
#! /usr/bin/env racket #lang racket (displayln "Hello World!")
接着使用F5
执行 S-表达式,成功的打印的出Hello World
至此,安装Emacs
并设置racket
环境就完毕啦