| 
  
   | 
  
  status  privacy about contact  | 
|
| 
         
        
     
	  Welcome to Orcmid's Lair, the playground for family connections, pastimes, and scholarly vocation -- the collected professional and recreational work of Dennis E. Hamilton 
    
	    Archives 
      	
	  
       
        Atom Feed Associated Blogs Recent Items  | 
    
	
        
    
	
      2007-02-23
 Peter Naur: Science for Computer SciencePeter Naur’s brief citation for the 2005 A. M. Turing Award reads, “For fundamental contributions to programming language design and the definition of Algol 60, to compiler design, and to the art and practice of computer programming [my emphasis].” The full citation provides a deeper look: “Naur pioneered the methodology for writing correct programs. … Naur’s work is formal and precise; but it displays an exceptional understanding of the limits and uses of formalism and precision. Throughout his career Naur has been a leader in establishing Software Engineering as a discipline - converting program design from an art form to a subject with sound basic principles. … His recent work has focused on programming as a human activity - exploring the social and ethical aspects of computing, and also the problems of writing programs so as to cater for evolving requirements.” As sometimes happens, the recipient used the occasion of the award to introduce his latest view of investigations for which he is not yet widely-known. Naur’s Turing Lecture recounts the path by which he reached a subject that increasingly commanded his attention over the past half-century [1]. {tags: orcmid Just Science Peter Naur Turing Award Computer Science Theory Building} Reconstructing Naur’s ThesisMy colleague Bill Anderson and I have followed Peter Naur’s work and writings probably as long as we’ve known each other. Bill has been the systematic reader, always reminding me of how much Naur has already contributed to understanding topical and stubbornly-remaining problems of software engineering. We looked forward to appearance of his Turing Award paper. It is not an easy piece, and we’ve elected to extract and analyze some key portions at length. We begin our explorations by examining the notion of description and its role in science. This is not a new topic in the philosophy of science. It is peculiarly important to situating the science in computer science, and we will probably chew more on the ways that description arises in elements of computer science than any other topic. You might do likewise. Naur’s Progressive ExperienceIn the introductory paragraphs, Peter Naur asserts that experiences in his career have featured increasingly-firm conviction that computing (that is, operating by computation as computers do) has nothing to do with human thinking (that is, as it arises in activity of the human nervous system). Almost two-thirds of the Turing Award paper are devoted to a theory of mental life that Naur offers in refutation of the notion that human thinking has any similarity to computation whatsoever. He embarks into his thesis with the iconoclastic claim that “a large part of what is currently said about human thinking and about scientific and scholarly activity is false and harmful to our understanding.” The sections that come first trace the experiences by which Naur progressed to this point of view. Explanation vs. Description in ScienceNaur raises description as the “core issue of science and scholarship [1: p.85],” 
 The emphasis is Naur’s. Description figures in an important way in the next, post-astronomer stage of Naur’s career. Even so, this use of description as the ultimate concern of scientists is puzzling. I think it is different than that. I think Russell does as well. Easily dispensing with causality as a red-herring invented by philosophers to muddle the methodologies of science, Russell makes this important observation about the nature of science [2: pp.142–143]: 
 Russell does not make use of “description” at all in this context. On reflection, that’s no surprise, since Russell has a very particular usage for description (whether ambiguous, indefinite, or definite) in his analysis of how language is used descriptively and in our claims to knowledge in certain matters. This is quite different than the empirical contingency that Russell ascribes to scientific endeavors. Russell might countenance description as performed by naturalists and astronomers — that is, the use of observations in science — but I think not with Naur’s emphasis. If “description” is off the mark, what alternative term can we offer that resonates with Naur’s concern yet is not so presumptive? My preference is “explanation,” not so much as an answer (and certainly not “the truth”) but a way of relating to ourselves some confirmable uniformity of nature. Rushing to the dictionary, I find it useful that “description” is tantamount to “explanation,” an account or representation of something. However, both terms are inappropriate in their sense of giving the reason for something. Details about something — yes, how — not so much, why — not at all. Just the same, we do use scientific theories (and laws) as ways to explain observed phenomena to ourselves. It is the sense of explanation as an observer-significant story or theoretical conception that appeals to me. I will stick with that as informally preferable to description, with its — to me — suggestion of ultimate accuracy. A way to keep the terms straight is with this maxim: we are not describing what’s so, we are using an explanatory conception that conveniently accounts for what happens without concern for how or why. There is harmonious use of explanation in this touching characterization of scientific activity [3: p.31]: 
 Application to Computing ScienceI want to follow-up on this gentle wordsmithing with an examination of formalism in science, especially in computer science, and how that intersected Naur’s work in programming languages. Meanwhile, Eugene Wallingford also finds science as being about description in Russell, asserting that [4], 
 I commend the entire piece to your attention, although I do find this particular passage on description rather disheartening. To unravel this concern, it will be necessary to work our way up to an important notion of Peter Naur, that of programming as theory building. For an alternative, empirically-grounded look at some of the science that underlies the success of the modern digital computer, I recommend Charles Petzold’s “Anatomy of a flashlight” for its remarkable foray into kitchen-table science [5: pp.23–24]: 
 Isn’t it interesting that, in the year 2000, a description of the Bohr atom could start off with “As we know.” Petzold uses this conceptualization as a way of explaining certain matters to ourselves—a convenient model. The model is so evocative that we tend, by now, to take it as a revealed truth. To appreciate how it is far more than that, it is useful to remind ourselves that this picture of the atom is a theoretical conception that accounts for some natural phenomena under a significant range of conditions. But it is still Einstein’s closed watch. Hold that thought for when we ask, in a more critical way, just what, exactly, is a science that could be called the science of description? And if computer science is not that, pray tell what is the science that is (uniquely?) in computer science? Computing Versus Human Thinking: OrganizationFor the most part, Naur’s paper is presented in short sections that we’ll use as organization of our commentaries. The largest section, preceding the conclusion, presents a theory of human mental life that we will not explore. We’re not qualified to assess this part, and it is not necessary to master it to explore the main themes that strike us as pertinent regardless of the merits of this particular theory. 
 References
 Comments: Edsger Dijkstra is reported to have said "asking whether a computer thinks is like asking whether a submarine swims". That's a wonderful observation. Thank you. You may find my older piece on "What Computers Know" to have some bearing on what Dijkstra may have been pointing at. Also, let me take this opportunity to point out that there are on-line videos of Naur's presentation on receipt of the Turing Award. Scroll down the ACM page on Naur's award to where there are links to two versions. I'm still mulling over the next part, on description of programming languages and data structures.  | 
|
        
            
         | 
    You are navigating Orcmid's Lair. | 
         
        template 
          created 2002-10-28-07:25 -0800 (pst) 
          by orcmid  |