What Naur got wrong from The concept of mind
In Programming as theory building, Peter Naur introduces what he calls “Ryle’s notion of theory” and attempts to build a notion of programming on top of it. Below I claim that he confounded what Ryle was saying, and as consequence his paper is more convoluted than it should. And here is a stroked-through version of it that I hope makes it easier to follow.
The first sign is his stating that the concept of theory as characterised by Ryle “appears as an example of what Karl Popper calls unembodied World 3 objects and thus has a defensible philosophical standing”, a very odd thing to say. To begin with because Ryle’s idea has a “defensible philosophical standing” due to the mere fact of him being a philosopher doing philosophy. But more importantly, because while it is true that theorising was for Ryle an activity embedded in culture, just as Popper saw it, the latter stablished that three Worlds—material (1), mental (2), and cultural (3)—exist and interact. On the contrary, the whole agenda of The concept of mind (the only work by Ryle quoted by Naur, and the only one I’ve read) is to reject that something like the mind exists separated from the material, or in other words, that we are ghosts in a machine.
To do so he attempts “not to increase what we know about minds, but to rectify the logical geography of the knowledge which we already possess”. For example, it’s common to conflate intelligence and intellect, which for Ryle are clearly different:
When we speak of the intellect or, better, of the intellectual powers and performances of persons, we are referring primarily to that special class of operations which constitute theorising. The goal of these operations is the knowledge of true propositions or facts. Mathematics and the established natural sciences are the model accomplishments of human intellects.
[…] there are many activities which directly display qualities of mind, yet are neither themselves intellectual operations nor yet effects of intellectual operations. Intelligent practice is not a step-child of theory. On the contrary theorising is one practice amongst others and is itself intelligently or stupidly conducted.
Yet Naur conflated both by asserting that theories can’t be reduced to rules and criteria:
The dependence of a theory on a grasp of certain kinds of similarity between situations and events of the real world gives the reason why the knowledge held by someone who has the theory could not, in principle, be expressed in terms of rules. In fact, the similarities in question are not, and cannot be, expressed in terms of criteria, no more than the similarities of many other kinds of objects, such as human faces, tunes, or tastes of wine, can be thus expressed.
Even when The concept of mind makes clear that what can’t be reduced in such a way is intelligence:
The well-regulated clock keeps good time and the well-drilled circus seal performs its tricks flawlessly, yet we do not call them ‘intelligent’. We reserve this title for the persons responsible for their performances. To be intelligent is not merely to satisfy criteria, but to apply them; to regulate one’s actions and not merely to be well-regulated. A person’s performance is described as careful or skilful, if in his operations he is ready to detect and correct lapses, to repeat and improve upon successes, to profit from the examples of others and so forth. He applies criteria in performing critically, that is, in trying to get things right.
This point is commonly expressed in the vernacular by saying that an action exhibits intelligence, if, and only if, the agent is thinking what he is doing while he is doing it, and thinking what he is doing in such a manner that he would not do the action so well if he were not thinking what he is doing.
Reached this point is fair to wonder if having gotten the concepts mixed up, can Naur still claim that programming is theory building. I argue that not only was Naur onto something, but that Ryle’s makes the case better, as for him a thinker:
is like the farmer, whose path is still sufficiently rough to require him to tread up and down it somewhat heavy-footedly, in order to smooth out some remaining inequalities of the surface. As the farmer is both half-sauntering and still preparing the ground for more effortless sauntering, so the thinker is both using his near-mastery of his theory and still schooling himself to master it perfectly. Telling himself his theory is still somewhat toilsome and one of the objects of this toil is to prepare himself for telling it without toil.
He could also have written that a thinker is like the programmer, whose program is still sufficiently rough to require them to modify it in order to smooth out some remaining defects of its functionality. Programming is certainly theory building, even if we get paid for the program and not the theory, which by the way is:
the results of any kind of systematic...