Next: , Previous: , Up: List Processing   [Contents][Index]


1.7 Variables

Emacs Lispではシンボルに関数定義をもたせることができるのと同じように、関連付けられた値をもたせることができます。この2つは同じではありません。関数定義とはコンピューターがしたがうべき命令セットです。それにたいして値とは数値や名前のように、変化(vary)し得る何かのことです(このようなシンボルがvariable: 変数と呼ばれる理由です)。シンボルの値にはシンボル、数値、リスト、文字列のように任意のLispを指定することができます。値をもつシンボルは、よく変数(variable)とも呼ばれます。

シンボルは関数定義と関連付けられた値の両方を同時に保有することができます。いずれか一方だけをもつことも可能です。これら2つはそれぞれ別個のものです。これはたとえばケンブリッジという名前によってマサチューセッツという都市を参照でき、それと同じようにケンブリッジという名前に関連付けられた“素晴らしいプログラミングセンター”のような情報を参照できることに幾分似ています。

他の考え方としては、シンボルを引き出しのある箪笥のようなものだと想像してみることです。ある引き出しには関数定義、別のには値等と想像してみましょう。関数定義を保持している引き出しに影響を与えることなく値を保持している引き出しの内容を変更できるし、その逆も可能です。

This page has generated for branch:work/add_lispintr, commit:65845cf60c073f2f3182d1d07483530e9bbe1d96 to check Japanese translation.