First and foremost... how should I name this project ? Any ideas ? MIXPerl, Perlmix (trivial)... anything spicier ?

  • Chicken or egg ? - What should I implement first, the MIX virtual machine, reading 5 byte (+ sign) words and executing them, or a MIXAL assembler, translating MIXAL symbolic language to whose 5 byte words.

    At the moment, I see pros and cons to both approaches.

    Virtual machine first - will give me a good understanding of the architecture. Though I've read documentation on MIX, I can't say I know the theory perfectly. I believe that after writing the VM first, I'll be very skilled in the architecture, and writing MIXAL will be peanuts.

    MIXAL first - will make things much easier to debug when I write the VM. I'll be able to test the VM by symbolic MIXAL commands, and not "hand wired" words.

  • MIX machine code format - make it binary or text ? Binary is definitely more "machine like" and also much more compact (each word easily encoded in 5 real-computer bytes). Text, OTOH, is easier to debug and "hand wire".

    I think that I will eventually support both. The VM execution should probably operate on the text format, it is far more digestible. An abstraction layer will translate between the formats, when applicable.


comments powered by Disqus