問題タブ [bifunctor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
haskell - 型変数によるインスタンス宣言
このようなものを書くとうまくいきます:
ここで、これを反転させたいとしましょう。Left は f を値に適用します。
これはコンパイルできません。次のようなものが必要だと思いますがFunctor (Either _ b)
、どうすればよいですか?
scala - BiFunctor の暗黙的なパラメーター
IO
エラー用のチャネルでBifunctor を使用する予定です。そのため、暗黙的なインスタンスを提供しようとしましMonadError
たが、コンパイルに失敗しました。
たとえば、cats-bio :cats.BIO[+E, +A]
コンパイルエラーが発生しました
を必要とすることを修正する方法がよくわかりませんMonadError[F[_], A]
。
haskell - Bifanctor と Arrow メソッド
Bifunctor
とArrow
メソッドの間には少し重複があります。
このBifunctor
クラスには、 の法則と完全に類似した法則が付属していFunctor
ます。
このArrow
クラスには、いくつかの異なる法則と、(***)
「これは一般にファンクターではないことに注意してください」に関するやや不可解な警告が付属しています。驚いたことに (私にとって) に関する法律は 1 つだけです(***)
。
Arrow (->)
インスタンスとインスタンスは正確Bifunctor (,)
に一致するため、bimap @(,) = (***) @(->)
. これには特別な意味がありますか?意味のある仮説はありますか
もしそうなら、それは機能的な依存関係を認めますか?