attempt at c compiler in c