Receber por email
← Voltar para o catálogo

exception

Do not throw exceptions from pure code with error or throw, give exceptions structured types, and never silently swallow errors in IO. Use when writing or reviewing Haskell error handling, exceptions, or IO code.

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/exception/svg)](https://www.skillteca.com.br/skills/exception)
#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

例外処理の原則

error関数の禁止

純粋関数空間の中で例外を投げられるerror関数の使用は原則として禁止です。

[haskell-tasuke:partial-function](../partial-function/SKILL.md) でも触れましたが、 純粋関数空間で例外を投げてしまうと、 呼び出し側で捕捉するのが困難だからです。

また例外に入っているのがStringという非構造化されたデータであると、 デバッグが難しくなります。

throw(導入されている場合は非純粋であることを明示したimpureThrow)の方が、 例外に型がついているという点ではまだマシですが、 こちらも純粋関数空間で例外を投げているのは同じなのでやはり推奨されません。

呼び出し側にMonadThrowやEitherなどを使ってエラー情報を伝播させてください。

例外

論理的にどう考えても発生しないはずの場所なら許容されます。

そんなおかしなことが起きているなら、 アプリケーション自体を終了させるのが適切なレベルの話です。

それでもなるべ

[Description truncada. Veja o README completo no GitHub.]

Compartilhar X LinkedIn