C compiler in C