Initial working compiler