Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!caip!princeton!allegra!ulysses!mhuxr!mhuxt!houxm!ihnp4!inuxc!pur-ee!uiucdcs!ccvaxa!aglew From: aglew@ccvaxa.UUCP Newsgroups: net.lang Subject: Re: compound statements ( side note Message-ID: <800018@ccvaxa> Date: Fri, 18-Jul-86 17:10:00 EDT Article-I.D.: ccvaxa.800018 Posted: Fri Jul 18 17:10:00 1986 Date-Received: Mon, 21-Jul-86 04:09:46 EDT References: <221@bsdpkh.UUCP> Lines: 41 Nf-ID: #R:bsdpkh.UUCP:221:ccvaxa:800018:000:1887 Nf-From: ccvaxa.UUCP!aglew Jul 18 16:10:00 1986 >> Dijkstra argues that making the null statement explicit, `skip', with >> defined semantics, may be as important for computer science as the >> invention of zero was for arithmetic. > >Mmph. That's either a misattribution or one of the craziest analogies I'VE >ever heard. Reference: _A_Discipline_Of_Programming_, Edsger W. Dijkstra, Prentice-Hall, 1976. (I am very attached to this book, as it was one of the first books on Computer Science, as opposed to programming, that I ever read. I keep it on my bookshelf at work, and every now and again try to understand it ;-) p. 25: The semantics of the statement named `skip' are therefore given by wp(skip,R) = R ... Note: Those who think it a waste of characters to introduce an explicit name such as `skip' for the empty statement while "nothing" expresses its semantics so eloquently, should realize that the decimal number system was only possible thanks to the introduction of the character "0" for the concept zero. (End of note.) The semantics should be intuitively obvious (`wp' means weakest precondition, so wp(skip,R)=R means that for R to be true after a skip it must have been true before (unless you're time based)). Are they uninteresting because they are obvious? Maybe so: do you find zero uninteresting? Maybe you do (I don't), but even so, is interest a prerequisite for a notation? The point is, programming is a positional notation. S1;S2 is not the same as S2;S1, hence it is position sensitive, and in any position sensitive system you need a placeholder. --- Yep. I guess with a signature like mine any statement I make is open to doubt. But with a name like mine you take the first decent nickname that comes along. Andy "Krazy" Glew. Gould CSD-Urbana. USEnet: ihnp4!uiucdcs!ccvaxa!aglew 1101 E. University, Urbana, IL 61801 ARPAnet: aglew@gswd-vms