欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

关于Common Lisp的hot update(热更新)

程序员文章站 2024-01-09 21:03:10
...

 

      CL的热更新也算是其一大特色了,配合着slime和swank就可以带来不同的编程体验!下面我们就来感受一下它的神奇之处。看下面代码:

 

(defun show (i)
 (print i))

(defun main ()
 (loop for i from 1 to 1000 do
   (show i)
   (sleep 1)))

 

程序结果会是这样的:

关于Common Lisp的hot update(热更新)
            
    
    博客分类: Common Lisp hot update热更新 
 

 

此时如果我们修改了show函数
(defun show (i)
 (print (* i i))) 
 
关于Common Lisp的hot update(热更新)
            
    
    博客分类: Common Lisp hot update热更新 
 

      哇唔!很爽不是吗?这样的话,我们就可以在项目需要修改的时候用slime连接服务器端的swank,修改完成后C-c C-c就可以看到修改的结果了! 不过要注意的是,如果在main函数运行的过程中修改main函数,修改是不会被更新的,只有重新调用main的时候修改的效果才会出现。在项目中,只要我们不修改入口函数或者一直循环的程序,其他都是可以热更新的,十分方便!

   如果想要更详细的slime的介绍,请看Albert Lee的slime的介绍:http://www.douban.com/group/topic/35691147/