compHostHaltCMD :: CoreHaltCMD (Param3 RunGen exp pred) a -> RunGen a
compHostHaltCMD (HaltCore (CoreRefComp coreId)) = do
    groupAddr <- gets group
    let (r, c) = groupCoord coreId
    lift $ callProc "e_halt" [ groupAddr, valArg $ value r, valArg $ value c ]
compHostHaltCMD :: CoreHaltCMD (Param3 RunGen exp pred) a -> RunGen a
compHostHaltCMD (HaltCore (CoreRefComp coreId)) = do
    groupAddr <- gets group
    let (r, c) = groupCoord coreId
    lift $ callProc "e_halt" [ groupAddr, valArg $ value r, valArg $ value c ]
compHostHaltCMD (HaltCore (CoreRefComp coreId)) = do
    groupAddr <- gets group
    let (r, c) = groupCoord coreId
    lift $ callProc "e_halt" [ groupAddr, valArg $ value r, valArg $ value c ]