-- t0 = Config { cTypes = [ MTApp (MTyCon "PING") [PVar (V "x")]
--                   , MTApp (MTyCon "PONG") [PVar (V "x")]
--                   ]

--        , cSets  = []

--        , cProcs = [(PConc 0,
--                    [ Choose (V "pi") (S "ps")
--                        [Send (PVar (V "pi")) [(MTApp (MTyCon "PING") [PConc 0],
--                                                         [Recv [(MTApp (MTyCon "PONG") [PVar (V "x")], [])] ()])] ()] ()]),
--             (PAbs (V "p") (S "ps"),
--              [Loop (V "X")
--                       [Recv [(MTApp (MTyCon "PING") [PVar (V "x")],
--                               [Send (PVar (V "x")) [(MTApp (MTyCon "PONG") [PVar (V "x")], [Goto (V "X") ()])] ()])] ()] ()])]
-- }

-- ---

mPing, mPong :: Pid -> MType
mPing v = MTApp (MTyCon "Ping") [v]
mPing, mPong :: Pid -> MType
mPing v = MTApp (MTyCon "Ping") [v]
mPing v = MTApp (MTyCon "Ping") [v]