我已经决定回到LISP(自我的AI类以来没有使用过它)以便更好地使用函数式编程,所以我下载了Lisp In A Box(我们实际上在以前的类中使用过) CLISP和Emacs.
当我运行它时,它说:
在1617号港口连接.拿这个REPL,兄弟,也许它可以为你服务.
什么?所以我更仔细地查看了Lisp In A Box网页,发现了这个:
SLIME是Emacs的集成开发环境,它通过网络套接字与Common Lisp实现接口.有关SLIME的大量信息可以在CLiki上的SLIME节点上找到.SLIME手册在线提供PDF格式.
我有点理解SLIME是什么(对emacs的某种扩展,对吗?)但是为什么世界上是一个文本编辑器启动自己的服务器并连接到它?
目的是让Lisp并行运行.
Slime连接到会话,然后您可以从许多不同的窗口(或甚至机器)拥有相同的环境,定义等.这意味着您可以启动应用程序并在运行中进行调试.
有关详细信息,请查看此博客.
插座比管道更灵活.首先,SLIME允许您连接到网络上的Swank服务器,这对于在具有长时间运行的进程(例如Web服务器)的远程计算机上进行实时修复非常有用.鉴于此,为什么要通过以支持管道和套接字的方式抽象通信来添加另一层复杂性?无论如何,管道的编程并不比套接字更简单.