A discipline of programming by Edsger W. Dijkstra

A discipline of programming



Download eBook




A discipline of programming Edsger W. Dijkstra ebook
Publisher: Prentice Hall, Inc.
Page: 232
ISBN: 013215871X, 9780132158718
Format: djvu


Web Design is sometimes described as a purely programming discipline with graphics tacked on the front, but this is not correct because the web is a visual medium. To Ander's defense, let me acknowledge that AspectJ has been used for the ugly. I think "A Discipline of Programming", " Formal Development of Programs and Proofs" or "A Method of Programming" by Edsger W. Still, if the only problems were deterministic access violations, I could live with them (I'm a very disciplined programmer). They are reasonably easy to reproduce and can be debugged using standard methods (code coverage). Dijkstra should be included here. Monads provide a type discipline for effectful programming, mapping value types to computation types. O Programs work the first time they run. If you take a look at his “A Discipline of Programming” (which is admittedly not an easy sit for the general reader) you'll understand he's talking about “correct-by-construction” programming. People often use this as an example to show that Dijkstra was excessively doctrinaire, and out of touch with the reality of programming, but usually it's because they don't know what his argument was. O They run forever after, even after changing. · Programming is an engineering discipline. Somewhere in the middle are the true software engineers, who approach computer programming in a disciplined and rigourous knowledge-based manner, similar to that of engineers in other fields. For further details, see Dijkstra's book "A Discipline of Programming". Dijkstra introduces a function called wp for "weakest precondition". In fact, Dijkstra should go at the top, followed by Knuth. Mature aspect-oriented frameworks offer a disciplined approach to programming. I wrote a response, explaining where Dijkstra was coming from, and I am very happy with how it .