Finished a first draft of the compiler