On the Problem of Programming Quantum Computers