Category Mistakes

Category mistakes by Dijkstra, Hoare, and others

Hopcroft and Ullman

Dated: 

24 October 2017

Is the history of computer science solely a history of progress? I don't think so. Judge for yourself by reading the present post in which I scrutinize the famous textbooks of John E. Hopcroft and Jeffrey D. Ullman.

Quotes from 1969 and 2007

I start by comparing the following two quotes. The first quote comes from Hopcroft & Ullman, 1969:

... a Turing machine is a reasonable, although surely not perfect, model of computation, ... [8, p.135]

Tags: 

`Plato and the Nerd,' Part 2b: Computer Science & Descriptions vs. Software Engineering & Prescriptions

Dated: 

23 September 2017

 

One of Edward A. Lee's main topics in his book, Plato and the Nerd: The Creative Partnership of Humans and Technology (MIT Press, 2017), is the contradistinction between science and descriptions on the one hand and engineering and prescriptions on the other hand. Reading between the lines, Lee is addressing the big question: Is computer science really a science?

Tags: 

`Plato and the Nerd,' Part 1

Dated: 

3 September 2017

Some computer scientists and software engineers write about the history of their fields. Others analyze and document the philosophy of their own discipline. In this latter regard, I am happy to announce the publication of Edward A. Lee's book on the philosophy of engineering:

Plato and the Nerd: The Creative Partnership of Humans and Technology (MIT Press, 2017)

Tags: 

Ensmenger & Flowcharts

Dated: 

8 July 2017

One of the questions that keeps me awake (during the day) is the following one:

What did a “computer program” mean to Actor X in 1973?

For example, both Christopher Strachey and Edsger Dijkstra viewed a “computer program” as a mathematical object, albeit of a very different kind [1]. (A decade or more earlier, both men did not associate computer programs with mathematical objects pur sang). But what about large parts of the North American computer industry in 1973? How did actors in this field view a “computer program” in 1973?

Tags: 

Michelle Obama vs. the Gatekeeper

Dated: 

15 October 2016

Category mistakes and incomputability claims seem to go hand in hand. I have given one modern example in connection with programming languages and Michael Hicks and another one directly concerning the diagonal argument. In the present blog post I shall give one more example, based on an excerpt from my rejected POPL paper entitled: `Category Mistakes in Computer Science at Large.' Specifically, I shall zoom in on the “code improvement problem,” as discussed by Albert R. Meyer and Dennis M.

Tags: 

The POPL Gatekeeper

Dated: 

6 October 2016

There is an obvious distinction to be made between computers (which include laptops and iPads) on the one hand and mathematical models on the other hand. Strictly speaking, it is wrong to say that “a computer is a finite state machine.” That's like speaking about a mathematical model as if it coincides with reality. Unfortunately, it is unusual to make these kinds of observations explicit in computer science, as I am doing now and as I have done in my paper entitled `Category Mistakes in Computer Science at Large.'

Tags: 

Parnas and Chaudhuri

Dated: 

4 October 2016

The topic of `Category Mistakes,' which I have discussed in my four previous blog posts is not limited to digital systems. Engineers in all areas use models and they, too, can potentially fall into the trap of mistaking the model for reality.

Tags: 

Pages

 
Subscribe to RSS - Category Mistakes