As far as writing an interpreter or compiler are concerned, what you're describing is more like making one for an existing production grade language that's compatible with it's wider ecosystem.
These exercises are more like building a rubber band powered toy car. Useless (but not worthless), fun to build (if building things is something you enjoy), and something you can learn fundamentals of the domain from.
Also, I wish I could take a swing at any of what you mentioned for as little up front investment in money or space as giving these software exercises a shot, it'd be an incredible learning experience and awesome fun!
These exercises are more like building a rubber band powered toy car. Useless (but not worthless), fun to build (if building things is something you enjoy), and something you can learn fundamentals of the domain from.
Also, I wish I could take a swing at any of what you mentioned for as little up front investment in money or space as giving these software exercises a shot, it'd be an incredible learning experience and awesome fun!