Hacker News new | ask | show | jobs
by gus_massa 4093 days ago
From #9:

>> Bitcoin is not a protocol in any meaningful sense of word. It is a single C++ codebase that you have to be bug-for-bug compatible with.

I don't want to discuss what a protocol is and if Bitcoin is a real protocol or not. But it's important to notice that it's more sensible to bugs/unspecified/unexpected results than normal software.

If Chrome is not bug-compatible with IE6, you can complain, mark one of them as unsupported, make two versions of your page, peek the common denominator, ...

The same happens with MicrosoftWord and OpenOficeWrite, the different implementations of LaTeX, email support of Unicode characters, C/C++ compilers, Python/PyPy/IronPython/Jython, ...

With Bitcoin, each bug difference is a hard fork waiting to happen.

1 comments

On the other hand, bug-for-bug compatibility requirement is not unique to Bitcoin. If your Doom fork is not bug-for-bug compatible with original Doom, replays will go out of sync.