func main() {
    ch := make(chan int)
    done := make(chan int)

    go Sender(ch)
    go Receiver(ch, done)
    go Receiver(ch, done) // Who is ch receiving from?
    go Work() // Just an infinite loop

    fmt.Println("Done 1:", <-done)
    fmt.Println("Done 2:", <-done)
}
Session types for main()