sendParam :: Serializable a => a -> Shell (Val a) b -> DNA ()
sendParam a (Shell _ recv _) = case recv of
    RecvVal       ch  -> liftP $ sendChan ch a
    RecvBroadcast grp -> case grp of
        RecvGrp p -> liftP $ forM_ p $ \ch -> sendChan ch a

-- | Broadcast same parameter to all actors in group
sendParam :: Serializable a => a -> Shell (Val a) b -> DNA ()
sendParam a (Shell _ recv _) = case recv of
    RecvVal       ch  -> liftP $ sendChan ch a
    RecvBroadcast grp -> case grp of
        RecvGrp p -> liftP $ forM_ p $ \ch -> sendChan ch a

-- | Broadcast same parameter to all actors in group
sendParam a (Shell _ recv _) = case recv of
    RecvVal       ch  -> liftP $ sendChan ch a
    RecvBroadcast grp -> case grp of
        RecvGrp p -> liftP $ forM_ p $ \ch -> sendChan ch a

-- | Broadcast same parameter to all actors in group