本文主要是介绍ELisp编程五:解析器相关,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Lisp解析器如何处理list?
如果这个list前面有单引号,就会直接将该list返回(不包含单引号);
如果没有单引号,则会将这个list的第一个元素作为函数名去查找,如果找到,则调用该函数,如果找不到则返回错误消息。
一般按照从左到右的顺序一个一个处理list中的元素
如果list内部有嵌套,解析器总是从最里层的那个开始处理。
如何求值?
求值的结果总是返回一个值,如果求值错误,也会返回错误信息
内部list的值被求出后,用于替换该list所在的位置,作为一个元素
如果对一个数字求值,将得到数字本身
如果对一个没有括号的符号(非数字)求值,解析器会认为是对一个变量求值
如果对一个有括号的,当然是对一个list求值啦。参考前面一节'...如何处理list'
C-x C-e的等价命令是:eval-last-sexp 求距离最近的一个symbol expression的值
这篇关于ELisp编程五:解析器相关的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!