Questions: Session Types

4 questions to test your understanding

Score: 0 / 4
Question 1 Multiple Choice

The session type !Int.?String.end describes a channel endpoint. What does a process holding this endpoint do?

AIt receives an Int, then sends a String, then closes
BIt sends an Int, then receives a String, then closes
CIt sends both an Int and a String simultaneously
DIt either sends an Int or receives a String
Question 2 Short Answer

If one endpoint has session type S, the other endpoint must have the dual type S-bar (complement). For !Int.?Bool.end, what is the dual?

Think about your answer, then reveal below.
Question 3 True / False

Session types can guarantee deadlock freedom in concurrent programs.

TTrue
FFalse
Question 4 Short Answer

Why do session type systems typically require linearity — that each channel endpoint is used exactly once?

Think about your answer, then reveal below.