I appreciate the visual languages are easier to approach, but it’s a bit unfair to compare it to traditional C++ syntax. There are numerous text-based languages that look a lot nicer than that C++ code. Additionally, if you combine a language with a highly interactive IDE you can avoid a lot of the typos and syntax errors.
There are also declarative languages which are higher level than things like scratch. They are still text based but closer to the problem domain than imperative languages (Scratch is primarily imperative with some event coding).