238_emacs lisp通过函数的参数传递一个函数行为
完整的common lisp的学习集合整理如下:
https://github.com/GreyZhang/g_lisp
继续学习emacs,继续学习lisp,继续学习emacs lisp。今天整理一份实践摸索的经历:通过函数参数向lisp函数传递一个行为。我觉得这个功能有点类似C语言中通过函数指针传递一个回调函数,但是仔细看看这个似乎又有一点不同,lisp中可以把函数的调用方式一起传递下去。
代码示范过程如下:
上面,定义了一个函数,功能是实现一个打印字符串的功能。执行测试,可以成功打印出来。
接下来,又定义了一个函数,参数是对于函数的调用。在第10行的测试代码中,把这个函数的调用传递进去(不同于C的指针操作,这里是函数的执行调用方式的传递)。之后,运行代码的结果也实现了函数运行的行为。
感觉这是一个很有意思的功能,也算是我终于看到了这门编程语言与我现在常用的C不一样的地方了。随着对手里面这些代码的解读,我觉得还会有更多的类似的功能被发掘出来。这也是学习让人比较快乐的一个很重要的一点。
完整的common lisp的学习集合整理如下: