記号の抽象性

http://d.hatena.ne.jp/masatoi/20090707/1246965336
に関して、書こうと思ったけど面倒になったので作った問題だけ載せておく

[*_*-*]
[**_**-****]
[***_**-*^]
[****_***-**^^]
さて下記の.で表現されている空欄を適切に埋めよ(点の個数は字数を意味しない)
[*^_^-...

「=」という記号を「式の値の同値関係」を表現するために使うことを小学校とかでは教えるわけだが、それは「=に本質的にそういう意味がある」のではなくて、単に「人間がたまたま都合がいいのでこの記号でそういう意味を表すことに決めただけにすぎない」ってことがいまいち伝わってないんじゃないかと思うんだな。だから、コミュニケーションを取る相手ときちんと定義の共通化さえすれば+と=の意味を取り替えたって構わない。

1=1+2
1=2+3
2=3+5
3=5+?
?を埋めよ

数学の問題を解くときだって「以下ではr * (cos(θ) + i * sin(θ))を < r, θ >と書く」なんて宣言して書く量を減らしたりするわけだ。また逆にその定義がわからないときには観測された事実から定義を推測したりするわけだ。

1=1-1
2=1-2
2=2-4
3=3-?
?を埋めよ

プログラミング言語の理解」には、仕様書を読んで定義を理解したり、ソースコードを読んで定義を推測したり、という側面があるのだろう。そして「定義」ってものは結局のところ人間が決めたものであって、それに重要な意味があるとは限らない。+にはどうして足し算という意味があるのか?それはそもそもラテン語のetが...微分の記号はなぜ上に点を打つものとdを使うものがあるのか?それはニュートンライプニッツの仲が悪くて...そういう話は興味がある人には面白いのだろうけど、足し算や微分の概念を理解して使えるようになるために必要ではない。微分が生まれた歴史的経緯とかを知ることは微分の理解を「厚みのあるもの」にするかもしれないので「無意味だ」とまでは言わないが、、それでもあまり重視すべき内容ではないと思う。