Category Mistakes

Category mistakes by Dijkstra, Hoare, and others

`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: 

Analysis Tools and Michael Hicks

Dated: 

21 September 2016

Before really discussing category mistakes in computer science in follow-up posts, I will first continue testing my aforementioned categories on the writings of people I admire the most. I shall take a 2014 blog post, written by Michael Hicks in connection with the Heartbleed bug. (His post was written on July 1st, 2014 and I accessed it on September 19th, 2016.)

Tags: 

Pages

 
Subscribe to RSS - Category Mistakes