P2pool is written in a language that I can only describe as trash.
Not interested in going near it at all.
@kano Speaking of languages, why on earth is Bitcoin written in C++? I thought C would have been the first and better choice.
Well there's 2 issues when programming:
1) Performance
2) Maintainability
Assembly fails badly on 2) so no one in their right mind would write anything but a tiny project using it.
C++ is for those who require a language that forces them to be object oriented (though many don't understand object orientation)
Object orientation is to simplify coding and concepts to supposedly simplify understanding and maintenance but rarely succeeds in doing that.
In of itself, object orientation isn't a bad thing, it's quite the opposite, but it also leads to slow code due to massive bloat.
C has a steep learning cure for anyone who is only familiar with simple languages and script languages.
A pointer is something that many fail to fully understand.
On the other hand, the language specification is so simple that it's not difficult to write a C compiler.
Also, since the language itself is not very far from machine code in concept, it leads to very fast compiled code.
But people can write bad and slow code in any language

Very few at all understand how to successfully performance tune code. Most projects, like Bitcoin, don't even care.