-
Symbols
symbols是Elisp中基本类型之一,they are names of things in Lisp, 类似c语言中的指针;如’function就表示求function的地址而不是function的值。
-
Features
是一个全局变量,表示当前已经加载了哪些功能。elisp包最后一条语句通常为
,用来表明这个包提供的功能,运行这条语句之后这个symbol_name就会被加入Features全局变量中。当使用(provide 'symbol_name)
(require 'symbol_name)
语句时,emacs会检查当前是否已经加载了该feature,如果未加载则会根据symbol_name查找相应的el文件并加载到emacs中来,否则什么不做。
变量features、函数require&provide 保证相应的code仅且加载一次,相当于c语言的静态局部变量的作用。
-
S-expressions/sexps
elisp中的表达式统称为sexps,包括但不限于code enclosed in parentheses, a string enclosed in double quotes, a variable name, a quoted expression, a numeral