When attempting code optimization for either a plugin or Kaleidoscope itself, what should the priorities be? I have some guesses, but I’d like to know from the people who are much more expert than I am. Here are my guesses, ranked in order from most important to least:
- Space used in RAM
- Space used in PROGMEM
- Space used in EEPROM
- Execution speed
I’m much more used to high-level, interpreted languages running on hardware that’s powerful enough that performance isn’t an issue for the programs that I write, so I’m usually much more focused on clarity of the code than any of these things. I still feel strongly that code clarity is very important, but I also think I’ve heard that some people have been running out of space with their sketches, so when I’m looking things over I’m starting to try things out that might improve at least the footprint, and I’m interested in which things deserve focus the most.