This is one of my favorite papers and a bigger influence on my coding than anything else I've read. It's hard to really take advantage of these ideas without a language designed for that, but I have made an attempt to document a style guide for python that tries to get some of the feel at least: https://github.com/fastai/fastai/blob/master/docs/style.md
(NB: this approach to coding in Python won't suit most people, for many reasons - I wrote it because I had a lot of requests to document my approach, not because I want anyone else to do the same thing. But if you're curious about ways to lay out code that are rather different to PEP8, do check it out!)
Nicholas Cooke in "Handbook of Musical Analysis" says something that has always influenced me very deeply:
> All notation is analysis
Obviously he's talking in the specific context of musical notation, but it seems true in other fields too. Choosing how to notate seems a very important analytical decision and certain forms of notation help or hinder analysis.
Feynman diagrams for example famously help to understand the maths underlying particle interactions.
Roman numerals (for a different example) make all kinds of arithmetic much harder than in Arabic notation.
"The preceding sections have attempted to develop the thesis that the properties of executability and universality associated with programming languages can be combined, in a single language, with the well-known properties of mathematical notation which make it such an effective tool of thought" (378).
I've been working through "Seven Sketches in Composability" , posted here a few weeks ago, and thinking about how much math relies in diagrams which are somewhere between drawing and writing. In research meetings, I often see people reasoning with diagrams and mathematical notation. In the vein of this article, I wonder whether it would also be possible to formalize mathematical pictographs to the point where they could be computable--a not-strictly-textual programming language. iPython notebooks often toggle between symbolic expressions and their implementation in code.
One thing that might be missing is context. Diagrams are indexical (pointing to contextual meaning) even more than text, often illustrating a problem that has previously been defined. This feels to me like potentially-fruitful design problem.
Looking further back to the days before cheap writing, I recently enjoyed reading this paper by Netz about the Ancient Greek use of counters as a tool of thought:
It explains how Greeks began using various sorts of counters or tokens for currency, policy making, court judgments, food distribution, recreation, etc., and demonstrates that Greek numeracy was quite varied and sophisticated while remaining concrete/tangible.
I’ve been meaning to read this for some time. Thanks for reminding me. What else like this is there? In book form or paper form. Or video.