Home exam Due 12/6.


Please submit electronically to {yahave,msagiv}@post.tau.ac.il.

PART 1 - MAWL (50%)


This part uses the MAWL language as a basis. A tutorial on MAWL is
available from here. A quick language reference is available from here.
 

     
     
  1. (35%) Define a structural operational semantics for MAWL. You are allowed to ignore:

  2. (i)  exceptions (ii)  the switch statement, and the keywords `break' and `continue' (iii) record types and subsessions (procedures).          Note that: (i)  a MAWL program may have persistent and non-persistent variables (ii)  a MAWL program may use named regions for session synchronization (iii) a MAWL program may use arbiters to perform I/O operations with the client's web-browser
  3. (15%) Give an example of a MAWL program that deadlocks and show that your

  4. operational semantics does not allow further derivations once the
    program deadlocks.

PART 2 - Solve Exercise 14.4 from the book (50%) It is available from here.


Good luck!!!