Re: プログラミングと論理学(Re: Re[2]:大文字と小文字の区別)
河野真治 @ 琉球大学情報工学です。
In article <squ3c14aqw9.fsf@stellar.co.jp>, manmos@stellar.co.jp (Hideo "Sir MaNMOS" Morishita) writes
> > そうなんですよ。変数にはインデックス入れると思うけど配列に
> > 入れるかというと?
> 高1の頃はFORTRANでそんなプログラムを書きました。というか、書かされま
> した。たぶん、1学期か2学期の期末試験。
つうか、sparse matrix とかでなくても、sort ぐらいでも使いますよね。
> > それは引数渡し機構でしょ。 久野
> 引数渡しではポインタは意識できないけど、commonならかなり意識してしまう
> のではないかと思うのですがいかがでしょう。
「機構」を意識した途端、実はポインタがからんでくるんだよね。
逆に、そういう機構を知らない、あるいは、知りたくないと思うと、
ポインタは絶対に理解できない。単に配列のインデックスを配列に
入れるだけなんだけど、それが、*a とかになった瞬間に、何かが
途切れてしまうようですね。
で、そういう操作的意味論を持たずに、ポインタに関する制約を
論理的に記述しようとすると、実は、極めて難しいってことなん
じゃないかなぁ。
実際、call by value と call by reference を区別するには、
単純な書き換えモデルと正規形の理論では不十分ですよね。
---
Shinji KONO @ Information Engineering, University of the Ryukyus
河野真治 @ 琉球大学工学部情報工学科
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735