getEnvExpr ::
       (MonadError Error m, MonadReadEnvExpr m) => HostExpr -> m (EnvExpr m)
getEnvExpr = maybe (throwError msg) pure <=< lookupEnvExpr
  where
    msg = "Invariant violated, host expression was not defined."
getEnvExpr ::
       (MonadError Error m, MonadReadEnvExpr m) => HostExpr -> m (EnvExpr m)
getEnvExpr = maybe (throwError msg) pure <=< lookupEnvExpr
  where
    msg = "Invariant violated, host expression was not defined."
getEnvExpr = maybe (throwError msg) pure <=< lookupEnvExpr
  where
    msg = "Invariant violated, host expression was not defined."