S-expressions,是 symbolic expressions
的缩写,也叫做 sexprs
, 代表 nested list , 它是由编程语言 Lisp 创造并推广的,Lisp 将它们用作源代码和数据。在 Lisp 罕用的圆括号语法中,s 表达式通常被定义为
- 是 atom, 或者是
- 是(x . y) 这种模式,其中 x 和 y 也是一个 exporession(递归定义)
ps: atom 的定义,即同时满足非 pair 数据,非空数据
(define atom? (lambda (x)
(and (not (pair? x)) (not (null? x)))))