Windpws下Common Lisp的实现

来源:互联网 发布:彩棉是转基因吗 知乎 编辑:程序博客网 时间:2024/06/05 04:49

好吧,又是一篇傻瓜式配置文件。貌似所有方面都是没有完全深入,只是停留在初步的层次,看来这个习惯要改。

这次是Lisp,一个古董级的语言,算是现在还在使用的第二历史最久的语言,仅仅排在Fortran后面。

具体的关于Lisp的深入介绍可以参见Lisp中文社区。

其实Lisp本身并不像Java,Python那样有固定的sdk'或安装包,Lisp仅仅是一个标准,在该标准下有多个实现,这也是Lisp比较自由的一个

原因,个人认为程序员都应该了解一下Lisp,即便不是深入,也要基本了解一下,更重要的是Lisp的思想,一个自由的不受语言限制的思想。

举个例子 (f c (a b)),看到这个会想到什么,可能在lisp里第一反应是函数,事实上,这个式子可以是任何语义,完全在于你的定义,可以是

函数依赖,可以是宏扩展。也可以是数据库查询,这就是lisp的魅力所在,可以由使用者自己来扩展。

上面仅仅是一个小例子,不过看到Lisp的魅力所在,作为程序员何不尝试一下?

学习Lisp比较常见的是Emacs+SLIME环境,或者是Listbox整合,这个的确不错,不过对于一些习惯Eclipse开发的同道来说,可能eclipse看

的更熟悉点,所以,今天主要介绍eclipse下的lisp学习和开发。

基于Eclipse,当然是通过安装插件的形式来实现lisp环境搭建了。主要插件是cusp,在eclipse中安装插件的输入栏中输入以下信息


这样就可以开始安装了。和一般插件类似,这个主要安装了cusp插件支持、lisp的库、SBCL——一个基于Common Lisp的编译器,具体介绍可以看

这儿。

安装完成之后就可以新建一个Lisp项目了,和一般的项目类似,可以得到一个初始的Lisp项目,结构如下


defpackage.lisp相当于声明的头文件,函数,变量什么的都要在这里声明,具体可以见下面(已经编辑过了)


main.lisp主要就是各函数的实现。tests.lisp是测试文件,可以删去。而最后的.asd文件是项目文件,在修改过前面的.lisp文件后需要重新载入

该文件来重新注册包,如下所示,.asd文件上右击->Load Project


最后是REPL,相当于Emacs里的Console,不过在eclipse里看比较舒服,功能可能没有Emacs的强大:

还有其他的功能,Debug等,慢慢探索了。

以上算是Common Lisp在Windows中eclipse下的实现,这样可以比较熟悉使用Eclipse来学习和开发Lisp了

作为一个程序员,还是要熟悉一下Lisp,即便以后可能用不到,至少了解一下Lisp的思想也不错,毕竟,这个算是程序语言的祖宗级存在了。

能在今天还存在是使用还是有其价值的。

原创粉丝点击