本文主要是介绍ELisp编程二:Atom,Symbol,空格,注释,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Atom
说明
在list中的不可分割的元素称为atom,比如前面一篇中的数字,单词,运算符号等。
一个list可以只有一个元素,或者一个元素都没有。Empty list写成 '(),这是一个特殊的list,因为它也同时算做一个atom.
array(数组)也是一个atom,但是可以被分成多个部分。
双引号括起来的字符串也是一个atom,它有个常叫的名字string.
(atom) 函数
该函数用来测试一个lisp object是否是一个symbol, 比如下面的'(f f) 不是atom
(atom '(f f))
nil
Symbol
说明
symbol是一个对象,拥有(唯一的)name,value,function和property list。有一些函数可以访问你这些属性,比如symbol_value.
当你定义一个变量的时候,其实是创建了一个symbol对象,然后将变量的值放到了这个symbol对象的value属性中。
详细可以参考该文(十分推荐):http://www.cppblog.com/kevinlynx/archive/2011/03/22/142462.html
判断是否是symbol
symbolp 函数判断lisp object是否是一个symbol
定义一个symbol
空格与换行
多余的空格会被自动去掉,换行符号只是用来便于人阅读的,也会被去掉。
注释
;开头代表注释
不过常用两个连续分号,比如我的.emacs文件中就有
;;------------------------------------------------------------------------------
;; Input method for Chinese
;;------------------------------------------------------------------------------
;;sudo apt-get install ibus-el
(require 'ibus)
(add-hook 'after-init-hook 'ibus-mode-on)
Keyword Symbol
:开头的都叫做keyword symbol,有以下特性:
被当作常量,不能重新绑定,也不能修改其值。
这篇关于ELisp编程二:Atom,Symbol,空格,注释的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!