GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/eintr/Variables.html ・ emacs-doc.conao3.com

1.7 変数

Emacs Lispでは、シンボルには関数定義が紐付けられるのと同様に、値を紐付けることもできます。この2つは異なります。関数定義とは、コンピュータが実行する一連の命令のことです。一方、値とは、数値や名前のように変動しうるもののことです(そのため、このようなシンボルは変数と呼ばれます)。シンボルの値は、シンボル、数値、リスト、文字列など、Lispにおけるあらゆる式になり得ます。値を持つシンボルは、しばしば変数と呼ばれます。

シンボルには、関数定義と値の両方を同時に持たせることができます。あるいは、どちらか一方のみを持たせることも可能です。この2つは別物です。これは、「ケンブリッジ」という名称がマサチューセッツ州の都市を指すと同時に、「優れたプログラミングセンター」といった情報も付随しているのと、ある意味で似ています。

別の考え方として、シンボルを引き出し箱に見立ててみる方法があります。関数定義を一つの引き出しに、値を別の引き出しに、というように入れていきます。値が入っている引き出しの中身は、関数定義が入っている引き出しの中身に影響を与えることなく変更でき、その逆も同様です。