A programming language based on NAND completeness
github.com
github.com
For example in Racket you can create a new language where the constants are restricted to 0 and 1 and only nand is defined, and use the standard Racket syntax with it. I've also seen some blogpost that modify Python in strange ways. But I think you would prefer to use a C like language as initial language.
It could be neat to make something like this compile to a Minecraft world with a redstone circuit.