Jump to content

Dijkstra and Computer Architecture




While we are on the topic of the wisdom of Dijkstra let us not forget what he said about computer architecture.

I refer you to EWD 32, Paragraph 5.  http://www.cs.utexas.edu/users/EWD/transcriptions/EWD00xx/EWD32.html 


"This —I should like to call it "unhygienic"— creativity and shrewdness of the programmers has had a very bad influence on machine designers, for after some time they felt free to include all kinds of curious facilities of doubtful usability, reassuring themselves by their experience that, no matter how crazy a facility they provided, always a more crazy programmer would emerge that would manage to turn it into something profitable —as if this were sufficient justification for its inclusion." - E.W. Dijkstra (EWD32)

The first time I read that I almost fell on the floor.  It is so true.  Most of the time we are awed every time the CPU architects have clearly anticipated our needs and built the correct facilities into the MCU's.  But occasionally, you get a strange oversight like the TRMT bit without an interrupt in the EUART on PICmcu's.  Or the advanced math options on the ADC with Computation but they work on every conversion and don't respect the channel.  i.e. you are limited to operating on a single ADC channel if you use the advanced features.

We all need a good laugh, so post your favorites "features" below. 


1 Comment

Recommended Comments

  • Member

TRMT bit without an interrupt in the EUART on PICmcu's

Agree 100% here, and am still flabbergasted that this oversight was not corrected when the enhanced PIC16F families were introduced.


Link to comment
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...