Q.変数は、なぜ変値とは言わないのか?
「変数」という言葉は、特に「専門用語なしで・・・」と謳って
教えている当講座では、唯一と言っていいほどいつも使っている
専門用語になるわけですが、
プログラマーであれば、これは極々あたり前の(あたり前過ぎる
ぐらいの)日常用語に過ぎませんが、(例えるなら、日本語の
「こんにちは」や、英語の「ハロー」や、中国語の「ニイハオ」
のようなもの・・・)
でも、プログラミング経験の無い一般の人の殆ど(99.9%の人)は
この「変数」という言葉の意味は知りません。
なので、これはプログラム用語の中でも特に特異性のある業界用語
であるかと思います。経験者にとっては、実に誰でも当然知ってる
言葉だと錯覚しがちなものです。
それで、私自身、これ疑問に思ったこともないですし、特にこれまで
誰かに聞かれたという記憶もないですし、実に意表をつかれた斬新な
疑問ですね。
で、この質問の答えですが、
これは、一言でいうとコンピュータの歴史によるものだと思います。
初期のコンピュータというものは、未だ数字しか扱えないもの
(現在の電卓のようなもの・・・)でありましたから、
おっしゃる通りで、これは現在であれば
定数・変数・引数 → 定値・変値・引値
と呼ぶべきであろうと思いますが、
コンピュータの出来た当時から数十年間のコンピュータ用語
としては、
定数・変数・引数
これが正しかったからだと思います。
その後のコンピュータの発展で、今のように文字データやなんやらも
容易に扱うことができるようなってきたいうのは、プログラミング
言語の歴史からすると、ごく最近(最近とは言っても数十年も前の話
・・・)、
しかも、定値・変値・引値と言うのはちょっと呼び難いですし、
時代と共にわざわざ変えるのも面倒なわけですから、昔の流れで
相変わらずにこの呼び名が使われているのだろうと思います。
例えば、テレビのチャンネルは今でも「回す」と言うわけですが、
今どきのテレビはリモコンなのでチャンネル回す人は居ないのと
同じですね。(けど、今でもチャンネルは「回す」ものであって、
「押す」ものではないわけです。)
それはそうした言葉だけに限りませんで、世の中の「何でそうなの?」
といった、その手の素朴な疑問というのは、ちょっとその歴史をひも
解いてみると、案外そのわけが良くわかるという場合が多いのだろう
と思います。
「マクロ」の歴史や、「マクロの記録」の歴史も、またしかりです。
機会あったらまたその辺もお話します。