¨

11.5 ProWeb's Execution Mechanism

To set the scene, you have ProWeb up and running on your server and one of your clients communicating with the server via their web browser. A typical live World Wide Web ProWeb conversation will be as follows:

  1. Client requests your ProWeb launch page, via its URL, from your server.
  2. Your ProWeb launch page, being a disk-based HTML page, is returned to the client in the traditional way.
  3. Upon receipt, your client completes the pages form
  4. Client submits the form by clicking on the pages submit button. The information entered into the form is sent to the CGI running on your server.
  5. If ProWeb is not already running, it will be launched.
  6. Your clients URL line is received by ProWeb, whereupon the relevant information is extracted and passed to WIN-PROLOG and your application. If WIN-PROLOG and your application are not already running, ProWeb will automatically launch them.
  7. Your application restarts from the beginning.
  8. A non-deterministic computation, based on the information just supplied, is performed.
  9. The next HTML page is generated and sent to the client.
  10. Your application terminates. Due to the large program size and relatively slow startup time, WIN-PROLOG will continue running for the time being.
  11. Client receives next page. If the page contains a form requiring completion, flow of execution returns to, and continues from, step 3.
  12. Conversation has come to a natural end.
  13. After a predefined period of inactivity, the ProWeb and WIN-PROLOG executables will close themselves down.

|||

ncorporated into a later release of ProWeb, to be used