全部的学习汇总: https://github.com/GreyZhang/g_lisp
标题中的布尔量加了引号,为什么呢?因为,emacs lisp中其实是没有布尔量这个类型的。感觉lisp语言学习的时候一直没有找到一个合适的路径,动不动就半途而废。后来,干脆不对此抱什么愿望了,能够零零散散学点东西也可以。
今天再次复习下布尔量,我也不知道是否是复习,都已经忘记了是否学习过了。
Emacs lisp中没有布尔量,只需要记住nil以及空的列表是false,其他的都是true就可以了。这段话,翻译自李杀的网站信息。
接下来,测试几个李杀提供的例子。
再进行几个非false的测试:
对我来说,这是最具有迷惑性的了。0在我先前的概念里面一直是false的代言人。
空字符串,也不是false。
这个也很有迷惑性,前面第3行的时候还是no,这里却是yes。其实,两者的不同在于一个是列表,而另一个是vector。
再做一个测试:
截图麻烦,直接备注一下每个结果:
这里需要注意的是,浮点小数点后面必须还要有信息才被认为是浮点。Xxp的函数一般是用于判断的,p是predicate的缩写。