Next: , Previous: , Up: 変数   [Contents][Index]


12.17 ジェネリック変数

ジェネリック変数(generalized variable: 汎変数)またはplace formsetfマクロ(setfマクロを参照)を使用して値が格納される、Lispメモリー内の多くの場所のうちの1つです。一番シンプルなplace formは通常のLisp変数です。しかしリストのCARCDR、配列の要素、シンボルのプロパティ、その他多くのロケーション(location)もLisp値が格納される場所です。

ジェネリック変数は、C言語のlvalues(左辺値)と類似しています。C言語のlvalueでは‘x = a[i]’で配列から要素を取得し、同じ表記を使用して‘a[i] = x’で要素を格納します。Cではa[i]のような特定のフォームがlvalueになれるように、Lispでジェネリック変数になることができる一連のフォームが存在します。