callSpec :: forall s a b.
            (Serializable a, Serializable b)
         => ProcessId -> a -> Process b
callSpec p m
  = do self <- getSelfPid
       send p (self, m)
       expectFrom p
callSpec :: forall s a b.
            (Serializable a, Serializable b)
         => ProcessId -> a -> Process b
callSpec p m
  = do self <- getSelfPid
       send p (self, m)
       expectFrom p
callSpec p m
  = do self <- getSelfPid
       send p (self, m)
       expectFrom p