Remix.run Logo
WalterBright 6 days ago

I don't know much of anything about him. Did he implement the preprocessor? the optimizer? the code generator?

(For some context, back in the 80's, code generators needed enhancements to implement C++. You couldn't just use an existing one. Bjarne had to do some ugly workarounds because of this.)

tux3 6 days ago | parent [-]

Sean Baxter's circle compiler uses LLVM as a backend, but I believe the rest is from scratch.

Arguably these days having a clear frontend/backend separation is good compiler architecture. It might slow down compile times a bit, but it's worth the cost.

vkazanov 6 days ago | parent | next [-]

So it sounds like he wrote the frontend of a cpp compiler? There's a lot of work in other layers as well.

WalterBright 6 days ago | parent | prev [-]

It wouldn't have made much sense to write the preprocessor these days, too, but it is part of the C++ compiler. Unless integrating it with the C++ lexer for speed purposes, as I did.