The talk starts from a dream/vision paper I published in 2008, whose title is a play on that of John Backus' famous Turing Award Lecture (and paper). I will propose that --- or rather ask whether --- programming can be made to be a lot closer to the way humans think about dynamics, and the way they manage to get others (e.g., their children, their employees, etc.) to do what they have in mind. Technically, the question is whether we can liberate programming from its three main straightjackets: (1) having to directly produce a precise artifact in some language; (2) having actually to produce two separate artifacts (the program and the requirements) and having then to pit one against the other; (3) having to program each piece/part/object of the system separately. The talk will then get a little more technical, providing some evidence of feasibility of the dream, via LSCs and the play-in/play-out approach to scenario-based programming. The entire body of work around these ideas can be framed as a paradigm that we have begun to term behavioral programming.
Prof. Dr. David Harel's EDOC Presentation: Some Thoughts on Behavioral Programming