this would be a compiler written with c