Most of the tools mentioned by Ocaretu are not for writing programs. Even systems like Enso, which is a hybrid text + graphical representation programming system are completely still keyboard based, and although they use auto-complete to a great extent, their UI is clearly based solely on use of mouse + keyboard.
The only successful programming system i have seen, completely optimized for touch, that actually works well, is the Fancade programming system. It is an App, with unparalleled ergonomics, that has let millions of people play games, and tens of thousands create and share little tiny games. It is a voxel based game development system, but the raw primitives of variables, IF, assignment, comparison, etc. make it a full-featured programming language. Mr. Magni of Sweden wrote it, they have a Discord group, and the tutorials on YouTube will get you started.
His snapping, selection, wire route mapping and general UI principles are of the highest quality, and anyone working in this area of GUI for programming should study this product closely, as it is such a good product. He uses sound effects, color coding for typing, and many other niceties. I guarantee you will admire the craftsmanship, and superb level of polish this game has.
If you knew how hard it is to earn my admiration (I dislike almost everything i see), you would not hesitate to study this product.
Enso is still very early in their evolution, and they are years behind Fancade.