The idea that computer programs should be represented by a structure, not simply a long text string.
Multiple views, editors.
Tools which can refactor large parts of the code at once.
Me defending text on ManuelSimoni's blog http://axisofeval.blogspot.co.uk/2012/04/suppossed-primacy-of-text.html
> I may be wrong about this, but my understanding is that mathematics has unified geometry and algebra so that statements and proofs in one can be reformulated in the other.
> Which suggests to me that there's nothing you can express diagrammatically that can't be equally well expressed in symbols.
> So it then boils down to convenience for the writer and the reader. What's the best UI?
> Hinting with colour may mean less typing, but if I have to take my hand off the keyboard to grab the mouse to pop-up a colour picker it sure ain't faster or more convenient than a few extra keystrokes which I've probably cognitively chunked as part of my program-typing skill.
> Until now, given that every computer has been equipped with a typewriter-like input and a character displaying output (teletype or voice if not screen), then text has been the most conveniently general purpose representation.
> We also have a very rich ecosystem of tools and techniques to work with it. Not just text editors or IDEs with syntax checking / colouring, autocomplete etc. But text search, grep, diff tools, patch management, distributed source control like Git. Macros, templates, text rewrite rules, regular expressions, code-generation, compilers. The Unix pipe to compose multiple textual tools together (which can be used in both composition and analysis of textually represented programs).
- And on SmallTalkUnix