完整的common lisp的学习集合整理如下:

    https:///GreyZhang/g_lisp

    继续spacemacs的学习,确切来说,现在的学习扩展到了emacs的实现了。上一次,我们的分析到了如下代码:

231_emacs lisp cl-lib初探_lisp

    接着,算是又一次不顺利。因为,这里又遇到了好几个不熟悉的东西。也是逐个击破吧!首先,探索一下cl-lib。为了了解相应的功能,先去看一下cl-lib.el文件。

    简单浏览了一下文件,这一次的分析也暂时先分析一下开篇的注释。

231_emacs lisp cl-lib初探_lisp_02

    看起来,这个模块是为了提供common lisp兼容性而扩展出来的。似乎,我应该觉得庆幸。本来,我是在学习common lisp的,奋战了一段时间铩羽而归。之后,考虑学习elisp并且开始分析spacemacs的配置,没想到看了没有多少东西再次重返到了部分common lisp的学习。

    从上面的注释信息看,这个模块提供了一定程度的common lisp的兼容性,超出了内置elisp的功能。那么,这个是否还算是elisp的功能呢?

    这个模块是对一个1986年的旧模块的重写。功能经历了30多年,超越了我的年龄了,真该向那些前辈们致敬。

    有意思的是,这里的版本信息似乎有点混乱,上面开篇提到的版本是1.0。继续往下看,信息描述如下:

231_emacs lisp cl-lib初探_Emacs_03

    接下来,又来了这么一堆版本信息。这个版本信息的记录方式也有点混乱,没有一定的顺序性了。这倒是很有意思的一个现象。从这些代码中还能够看出一点,那就是这个模块发布的首个版本是2.0版,这也是很有意思的事情。

完整的common lisp的学习集合整理如下:

    https:///GreyZhang/g_lisp