symbol-value
(symbol-value symbol)
symbol が指す動的(グローバル)変数の現在の値を返します。動的束縛 — スペシャル変数の let、同名の関数引数、progv — が有効ならその最も内側の束縛の値を、なければグローバルの値を返します。未束縛の名前は、その名前を持つ unbound-variable を通知します。値なしで宣言したスペシャル変数((defvar *x*))も、その束縛の外側では同じく通知します(cell-error-name を参照。WASM では捕捉するフォームを持たないプログラムはトラップします)。Common Lisp の symbol-value と同様、レキシカルな束縛は見えません。t・nil・キーワードは自分自身に評価されます。先に boundp で確認し、実行時に名前を組み立てるには intern を使ってください。
未束縛の変数はエラーを通知します:
CL-USER> (symbol-value '*nope*)
The variable *nope* is unbound