- 516 名前:デフォルトの名無しさん mailto:sage [2015/11/29(日) 17:44:57.78 ID:+8PPW4GA.net]
- >>503
ぶっちゃけソースコードが入手できるなら > CPUアーキテクチャ毎にコンパイラをいっぱい作ればいいんじゃないの? これで十分。何故ならソースコードレベルでは互換性がある(事になってる)から。 ソースコードが入手できず、しかしバイナリだけは入手できる場合には、そのバイナリを実行するには そのバイナリをなんとか変換して自分のマシンで動くようにするか、あるいはエミュレートするしかない。 Javaがやってるのはまさに後者な訳で、Javaのコンパイラがソースコードを仮想マシンのバイナリにコンパイルするから、 そのバイナリをエミュレートする仮想マシンをCPU・アーキテクチャ毎に用意して動かしてる。 メリットとしては ・ソースコードが駄々漏れしない(但し仮想マシンの抽象度レベルが高いので逆コンパイルはなんとか出来てしまう) ・コンパイラ毎の微妙な違いを気にする必要が無い ・環境毎にコンパイルしなおさなくて良い といった所かな。
|

|