Wednesday 18 July 2007

Intervention ---- or interleaving

That is the topic I will discuss tomorrow (or in the next post). When you ask a travel service on the web to find a hotel in Paris which can host two dogs and three cats and five babies together with one wife, and perhaps a neat (not too tall!) pet giraffe too, which should be near Louvre (which is such a terrible and great place to go which has everything) and which has a special "baby and dogs washing service" which is in some way nice then well what you are doing is you are asking somebody

If that service again asks "special hotel directory" then it is all right for the travel service it wants a service from somebody. Then it receives an answer and returns to you.

In functions this is just calling somebody and that guy again calling somebody.

In interaction this is interleaving. A hotel is talking with two parties at the same time, one a special hotel directory and another a client which is you. At least at some point it is talking with two people.

There are two kinds of interleaving. One is an inevitable, unescapble one, it is destiny, do not forget about it, it is strongly connected. in this case the interleaving is part of the whole conversation. It should be specified. In particular I may as well expect it. And changing it means changing conversation structure.

In another, it is more loosely coupled: for example perhaps the travel service can ask not a special hotel directory but another travel company. And perhaps I do not care. What I want is a room in Paris which is near Louvre to which I can bring five babies and a pet (well I do not repeat) so I do not care what people that travel service talks to as far as it serves the purpose.

Today that's all: I just wish to record there are two kinds of interleavings. We used not to care so much in sequential programs. Because it is functions . A function hides another function. But in interaction we have more variants. In fact a huge variety. Can we digest it...