v0.7 reliance on BDB caused it to be fundamentally broken/flawed. Its actions weren't consistent with either the documented protocol, the higher level source code, or anyone's understanding/expectation of what should have happened. It was a landmine.
Does this not argue for a diversity of implementations with different underlying 3rd party libraries ? Clearly it does. But this cannot happen until and unless there is actually a formal-enough spec to enable those to be written w/o ever "groking" all that C++ folklore, which is a moving target anyways ...
I agree on that 100%. It is inevitable that to survive Bitcoin will need to be move beyond a monoculture. Right now all the clients share the same "DNA". If there is a fatal genetic flaw in it then the network will not survive. This time the "landmine" was accidental, next time it may be planted.