アカウント名:
パスワード:
まあ、NEXTSTEPの時代から、複数のCPUで動くバイナリの仕組みはあるわけだから、開発者側がお行儀良くコードを書いていれば、コンパイルオプションだけでなんとかなるので、ユーザはそれほど気にしないで良いかもしれない。
でも、例えばARMっでx86とバイトオーダが違うみたいなので、一筋縄ではいかないかぁ。
#一筋縄でイかない場合でも、亀甲縛りならイく…
いや、エンディアンを意識せずにコード書いちゃうとあとから、エライ目に合います。
昔、知り合いが、「この本のとおり書いてみたんだけど、動かない」と相談を受けたので見てみると、ビッグエンディアンでしか動かないネットワーク系のサンプル。即座に、後輩達に「その本を持っているのであれば、直ちに焚書せよ」との命令を発したことがある。(わたしはRichard Stevensの本しか参考にしたことがなかったので、そんなひどい本があるとも思っていなかったが)
「ビッグエンディアンでしか動かない~」ってのはビッグエンディアンであることを前提として(≒利用して)書かれたコードであると思うので、「エンディアンを意識せずにコード書いちゃう」ってのとは逆ではないの。
ネットワーク系のサンプルなのにバイトオーダーへの配慮・補足がない、って話でしょうね。htonとか。明らかな前提を設けて意識的に書かれたコードか、無意識に処理系依存してしまったコードか、結果だけではどちらとも。
> 明らかな前提を設けて意識的に書かれたコード
そんなものを書籍のサンプルに載せる時点でやっぱり焚書しておk
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
身近な人の偉大さは半減する -- あるアレゲ人
fat binaryの復活 (スコア:2)
まあ、NEXTSTEPの時代から、複数のCPUで動くバイナリの仕組みはあるわけだから、開発者側がお行儀良くコードを書いていれば、コンパイルオプションだけでなんとかなるので、ユーザはそれほど気にしないで良いかもしれない。
でも、例えばARMっでx86とバイトオーダが違うみたいなので、一筋縄ではいかないかぁ。
#一筋縄でイかない場合でも、亀甲縛りならイく…
Re: (スコア:1)
Re: (スコア:2)
いや、エンディアンを意識せずにコード書いちゃうとあとから、エライ目に合います。
昔、知り合いが、「この本のとおり書いてみたんだけど、動かない」と相談を受けたので見てみると、ビッグエンディアンでしか動かないネットワーク系のサンプル。
即座に、後輩達に「その本を持っているのであれば、直ちに焚書せよ」との命令を発したことがある。(わたしはRichard Stevensの本しか参考にしたことがなかったので、そんなひどい本があるとも思っていなかったが)
Re: (スコア:1)
「ビッグエンディアンでしか動かない~」ってのはビッグエンディアンであることを前提として(≒利用して)書かれたコードであると思うので、「エンディアンを意識せずにコード書いちゃう」ってのとは逆ではないの。
Re:fat binaryの復活 (スコア:0)
ネットワーク系のサンプルなのにバイトオーダーへの配慮・補足がない、って話でしょうね。htonとか。
明らかな前提を設けて意識的に書かれたコードか、無意識に処理系依存してしまったコードか、結果だけではどちらとも。
Re: (スコア:0)
> 明らかな前提を設けて意識的に書かれたコード
そんなものを書籍のサンプルに載せる時点でやっぱり焚書しておk