エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
純粋な関数として定義できるんだけど内部でやってることが複雑な場合、何が起きてるかわからないと心配... 純粋な関数として定義できるんだけど内部でやってることが複雑な場合、何が起きてるかわからないと心配だからとログを吐く機能をつけると、その時点でそいつは IO アクションになってしまう。ログを吐くという副作用を持つのだから IO になるのは当たり前でそれを避けるべきではないのだけど、ログを吐かなくていいいシチュエーションでは、その計算を純粋な関数として使えたほうが理想的ではある。 そんなことを Identity と 型クラス 使えば簡単にできるんじゃねと思いついたんだけど、 monad-logger でそもそも機能が提供されてた。 runLoggingT や runNoLoggingT でモナドに class MonadLogger が持つロギング用のアクションを追加できるのだけど、前者はモナドが class MonadIO のとき、後者は任意の class Monad について使えるようイン