typeCheckConst :: Const -> TypeCheck Type
typeCheckConst = \case
  CInteger _ -> return TInteger
  CBool _    -> return TBool
  CUnit      -> return TUnit
typeCheckConst :: Const -> TypeCheck Type
typeCheckConst = \case
  CInteger _ -> return TInteger
  CBool _    -> return TBool
  CUnit      -> return TUnit
typeCheckConst = \case
  CInteger _ -> return TInteger
  CBool _    -> return TBool
  CUnit      -> return TUnit