Receber por email
← Voltar para o catálogo

io-monad

Prefer MonadIO and MonadUnliftIO type classes over using IO directly, and avoid redundant liftIO. Use when writing or reviewing Haskell IO actions, monad transformers, or type class abstractions.

3estrelas
Atualizado há 4 meses

Ver no GitHub ↗ Licença: Apache-2.0

Como adicionar

/plugin marketplace add ncaq/konoka

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/io-monad/svg)](https://www.skillteca.com.br/skills/io-monad)
#ai

Alerta por categoria

Receba novas skills de Escrita e Conteúdo toda segunda

1 email curto, só com as skills novas de Escrita e Conteúdo. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

IOモナドの扱い

IOをなるべく直接使わず型クラスを使う

IOモナドはプリミティブすぎます。

他のモナド変換子などと一緒に取り扱うのが不便です。

呼び出すたびにliftIOを使うのは面倒です。

なのでアクションを定義するときは出来る限りIOを直接使うのではなく、 MonadIOや、 MonadUnliftIOといった、 型クラスで抽象化するべきです。

MonadIOの方がより一般的なので、 先にそちらで定義出来ないか検討するべきです。

MonadUnliftIOの定義では、

class MonadIO m => MonadUnliftIO (m :: Type -> T

[Description truncada. Veja o README completo no GitHub.]
Compartilhar X LinkedIn