シンボルが評価される際、それは変数として扱われます。結果は、変数に値がある場合はその値となります。シンボルに変数としての値がない場合、Lispインタプリタはエラーを報告します。変数の使用に関する詳細については、変数を参照してください。
以下の例では、setq でシンボルの値を設定します。次にそのシンボルを評価すると、setq に格納されていた値が返されます。
(setq a 123)
⇒ 123
(eval 'a)
⇒ 123
a
⇒ 123
シンボル nil と t
は特別に扱われるため、nil の値は常に nil
となり、t の値は常に t
となります。これらに他の値を代入したりバインドしたりすることはできません。したがって、eval
はこれらを他のシンボルと同様に扱いますが、これら2つのシンボルは自己評価形式のように動作します。名前が ‘:’ で始まるシンボルも同様に自己評価され、通常はその値を変更することはできません。決して変化しない変数 を参照してください。