JavaScriptはCの恩恵を受けているのでシャロ―コピーなのは意外だった、というのが正直な感想。 Julia、知ってた。
JavaScriptはCの恩恵を受けているのでシャロ―コピーなのは意外だった、というのが正直な感想。 Julia、知ってた。
そもそも、1次元配列のみディープコピーするcopy.copy、いる?俺的には代入(シャロ―コピー)とディープコピーだけあれば十分だと思うんですけどね。
Pythonの代入がシャロ―コピーだということが判明し、そのとき「関数の引数に代入するとそれはシャロ―コピーだから、リストの変更も可能なのか」と思い、そのとき、ふと「あれ、Fortranもそうだったような?」ということに気づき、確かめてみたら、(続く)
変数に代入する場合はディープコピー、引数に代入する場合はシャロ―コピーという、ちょっと変わった仕様だった(多分ほかにもそういう仕様のプログラミング言語もあるかもしれないが)。
まぁそしたらFortran90以降では特にポインタがあるからその意味がなくなるわな。 引数にディープコピーさせるにはどうすればいいのかと言う問題も、別の変数にディープコピーさせればいいわけだし。 今だから気づいたけど、ここは原始的だが実に合理的でわかりやすい。面白い。
@kawamineka 基本的にはIntel製やAMD製がリトルエンディアンでモトローラ製がビッグエンディアンですが、今はモトローラ製は見なくなりましたね・・・。 ARMアーキテクチャやPowerPCはビッグエンディアンも可能なのでエンディアンはまだ気にしたほうが良いですが・・・。