On Tue, 5 Jul 2005, Adam Stiles wrote:
Binary compatibility is irrelevant at best {every Linux machine already has a compiler installed} and harmful at worst {Windows has wide-scale binary compatibility -- and rampant malware}. All that matters is _source_ compatibility: that the same source code will compile cleanly on a range of different architectures. Thanks to the excellent work done by the GNU project in developing their compiler suite and automated configuration / building tools, source compatibility is already a reality. And processors are fast enough now that there is no time saved in using precompiled binaries.
I've heard this argument before. Maybe I misunderstand, but it seems to amount to:
1) We don't care about anything that's not free software. (This is already too much for most people, but let's say that's no problem...)
2) We believe that C/C++ is usually magically portable across hardware architectures.
3) For any software, like say wine, mplayer with win32 emulation, etc, where the magic doesn't work, we expect you to _not_ switch architectures, or _not_ use that software, until you port it properly. (If you "cheat" with binary compatibility, porting may go too slowly, or may not happen at all.)
This is where I fail to see the logic that binary compatibility is harmful. We all migrate sometime. This is a migration aid. For some time period it's quite possible that binary compatibility is the optimal solution when considering the costs/benefits. Impracticality need not be the new credo of free software...