pub(crate) fn philosopher(
    id: u8,
    left: SharedChannel<LinearToShared<Release>>,
    right: SharedChannel<LinearToShared<Release>>
) -> Session<End>