Things like TIS-100 and Shenzen I/O confuse me. Why would I spend time learning some esoteric assembler that exists no where else, when you could take that same time and learn an actual assembler?
I really, REALLY wish they had done something really clever, like targetted AVR opcodes or something for their vCPU. That'd make it so not only do you get to have fun, but you learn a marketable skill in the process!
That's one of my major complaints about most of the "programming" games I've seen, in that most of the time, if I'm going to spend time writing code, I'd rather just hack on one of my projects then play a game with no real end-product. At least with personal projects, you wind up with an actual app at the end.
I did enjoy Spacechem and Infinifactory, though I didn't finish each before becoming bored.
------