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

1.8 引数

情報がどのように関数に渡されるのかを確認するため、お馴染みの「2足す2」の例を改めて見てみましょう。Lispでは、次のように記述します。

(+ 2 2)

この式を評価すると、エコーエリアに数値の4が表示されます。Lispインタプリタは、+に続く数値を加算します。

+ によって加算される数値は、関数 + の引数と呼ばれます。これらの数値は、関数に渡される、あるいは渡される情報です。

「引数」という言葉は数学における用法に由来しており、二者間の論争を指すものではありません。むしろ、関数に提示される情報、この場合は + を指します。Lispにおいて、関数の引数とは、関数の後に続くアトムやリストのことです。これらのアトムやリストの評価によって返された値が、関数に渡されます。関数によって必要とされる引数の数は異なり、全く必要としない関数もあります。3


脚注

(3)

「argument」という単語が、数学と日常英語という2つの異なる意味を持つに至った経緯を辿るのは興味深い。オックスフォード英語辞典によれば、この単語はラテン語の「to make clear, prove」に由来しており、したがって一つの派生経路では「証明として提示される証拠」、すなわち「提示される情報」を意味するようになり、それがLispにおける意味へとつながった。しかし、もう一つの派生経路では、「他者が反論しうる形で主張すること」を意味するようになり、それが論争という意味へとつながった。(ここで注目すべきは、英語の単語に同時に2つの異なる定義が付随している点である。対照的に、Emacs Lispでは、一つのシンボルが同時に2つの異なる関数定義を持つことはできない。)