Earlier quoted context omitted.
See my recent comment: > We need model based editing environments that will allow us to have a much richer set of software building blocks. https://news.ycombinator.com/item?id=16117668
I've had similar thoughts, notably as a way to side-stepping the composability limits of current parsing theory. But these limitation are increasingly worked around... And looking at rust, I can start to imagine a future where macros are powerful enough to support a lot of declarative coding. When coding javascript today I write code like: // can be imported, and api.router() mounted in express let api = new API(...)…
Text is essential for humans and could be a significant part of the interface (both reading and typing).
The problem is more about the underlying unit being text.
The problematic part of text is when we just write it freely and then have to parse it back and make sense of it which has very severe consequences.
This is because in the programming environment world we are forever stuck with a "text editor" mindset.
This means we shift the complexity away from the environment and pass it on to the compiler and the programmer which is not a good place for it to be.
So you can use "nano" to write very complex programs. Some people consider that a benefit, and in one way it is. However it is also simultaneously very problematic. Because it perfectly demonstrates just how far removed the authoring tool is from the problem domain.
The way I see it is that to unlock a new generation of software development experiences there's no way but to accept that we can't forever confine the act of programming to the primitive act of writing text like a book in a text editor.
The environment needs to be much more closely connected to the problem domain so that it can further empower you to do stuff.