i decide to write an assembler first