Hi all,
TGIF! And since it is friday, I started thinking on some alternatives to program PIC processors...
I don't know how many of you are familiar with the PIC family of microcontrollers. They are RISC controllers with a wide range of complexity, starting on 8-bit and up to 32-bit, but the architecture is basically the same:
- RISC
- Register based (from 20-16k general purpose registers)
- Limited hardware call stack.
While studying Haskell, the functional bug bit me and I realized that this architecture is somewhat not well suited for traditional compilers. I suddenly started thinking on how one could implement some kind of declarative language that could easy the programming of those beasts.
One of the approaches I thought was to use a block based programming (like Simulink), defining "atomic" operations that would be wired together.
Do you think a compiler for this "block language" could this be implemented in Haskell? What about using the Arrow monads?
Best Regards
--
Rafael Gustavo da Cunha Pereira Pinto
Electronic Engineer, MSc.