10月は全然ブログ書いてないですね。まぁ、まぁ。
ワールドのことはあんまり書くことがないかなと。なんというか、ありがちなやつでもあるし、何故か無かったやつでもある感じです。とりあえず実在させておこうと思ったので作りました。
概ね想定通りな感じで良かったです。色々話したりできたのもよかった。
後は最近なんとなく思ったことについて書きます。日記です。
語彙の話。
人間の思考が語彙によって制限されるというのはよく言う話ですが、それはつまり語彙が増えると思考しやすくなるということです。
そしてこのコンピュータ科学の分野っていうのは、当然ながら「これまでになかったもの」を扱う必要がある以上、語彙を増やさなきゃいけない分野だということになります。
この文章を書こうとしたきっかけは Graphics.Blit
です。Blit って何?
で、調べてみるとこれは "Block Transfer" の略であることがわかります。正確には、Block Transfer の略 Blt の慣用読みを綴って "Blit" ですね。
「ブロック転送」を一語で表す英単語が生まれているわけです。すごいことだと思いました。
他にもまぁ Pixel (picture element) も結構キモいし、Raycast でほぼ1語として使われている (Physics.Raycast
は "c" が小文字です) のもそういう方向性かなってちょっと思います。
そういう風にちゃんと「新しい語」として認識できると「概念」を認識できるようになる。っていう…のは一般的にあるとは思います。
とは言ってもそういうケースは稀で。大体は既存の語を借用していることがほとんど。
"render" は元々「やる」くらいの意味しかない語だと思います。"execute" も「行う」だし。でもそれらは "perform" とは違うという認識を私はしている。
いや、どうせ言語認識なんて曖昧なものではありますが。多少概念の認識…特に認識速度には影響してるなあとちょっと思いました。
この動画、マジでいい内容なんですけど、それに関連する話題として「vector と covector が性質として異なるのに、まとめてみんな vector と呼んでしまっていた」という話があります。
「3つのスカラー値で構成される値」といえば "vector" です。だけど、所謂「向き」を表すベクトルの扱い方と、法線ベクトルの扱い方は違う、っていうことがよく知られています。
それは法線ベクトルは所謂 vector ではなく covector だから、なんですけど、この違いは語彙が無いときっとわからないのです。
この語彙を生み出すためには線形代数的にベクトルをどう扱うべきかを丁寧につっついていく必要があって。それをやってるのがこの動画なんですが。
それまでは…というかまぁ現代の多くの人は、多分まとめて vector として認識しています。(ベクトル空間の元であることは間違いないですよ、もちろん)
同じように見えるものを区別するというのもまた抽象化の一つで。ちゃんとできていると「言葉が違う」すなわち「自然に違う扱い方ができるようになる」のです。そうありたいものですね。
語彙は多ければ多いほど良い…っていうのは確かにそうでしょうけど、私はあんまり語彙を増やさないタイプの人間です。細かい意味に展開可能であるべきだと思っているところがある。論理を丁寧に追えることが前提ですが…。
少ない言葉でもその組み合わせで十分な展開ができるなら、関係ないと思ったものたちもうまく繋げられたりするかなとか思ったりする。
…でもまぁ限界はある。いや、まぁ、細かく展開可能じゃないものはちゃんと大事な語彙として覚えているので大丈夫。"monad" とか。
なんの話だっけ。
ちょっと思ったのは、VR空間での諸々にはきっと語彙が全然足りないので、もしかしたらもっと私達は言葉を発明しなきゃいけないのかもしれない。
でも、逆に言えば、まだ新しい語彙が必要としていない領域なのかもしれない。
新概念が明確に出てきたら、そういうところできっと明らかになるんかなあってちょっと思ったりしました。
でてくるのかは、しらない。
おわり。