I'm confused. json.cpp is pure C code with custom atoi and atof implementations. block_allocator.cpp uses malloc and free with reinterpret_cast and some STL (max and swap).<p>The other C++ is in main, which can of course be ignored if this is embedded into another system.<p>It's clean code, very easy to follow, and probably works great, but why isn't it just written purely in C? Wouldn't that be faster <i>and</i> smaller?