There is research being done in improving abstractions for graphical languages. For instance, this applies to graphical representations of monoidal categories (so-called “string diagrams”), which can be used to represent functional programming, monad-based programs (at least to some extent), data-flow, control flow and the like.
It is still the case that textual syntax has a higher information density, though.
By the way, natural language generation could also be used to make programming closer to the cognitive style of humans, and thus more stimulating. I’m not talking about primitive efforts like COBOL here: we could take inspiration from linguistically-inspired formalisms such as Montague grammar to map commonly used calculi and programming languages to natural language in a fairly straightforward way.
There is research being done in improving abstractions for graphical languages. For instance, this applies to graphical representations of monoidal categories (so-called “string diagrams”), which can be used to represent functional programming, monad-based programs (at least to some extent), data-flow, control flow and the like.
It is still the case that textual syntax has a higher information density, though.
By the way, natural language generation could also be used to make programming closer to the cognitive style of humans, and thus more stimulating. I’m not talking about primitive efforts like COBOL here: we could take inspiration from linguistically-inspired formalisms such as Montague grammar to map commonly used calculi and programming languages to natural language in a fairly straightforward way.