6

理解します "。" (ドット) 関数合成として。「|」はわかりました。(パイプ)「または」ガード導入構文(ここから )としてですが、「.|」を使用したhttp-conduitsに関する回答を見ました それは私が理解できない方法でこの演算子を利用しています。

私が見つけたコンジットの他の参考文献は次のとおりです。

...データ フローでコンジットを結合するための "$$"、"$="、"=$="、"=$" などの構文を提案します。

これを「.|」と呼ぶにはどうすればよいですか この演算子とそれはどのように機能しますか?

予想どおり、「.| haskell」または「'dot pipe' haskell」または「'dot pipe' haskell operator circuits」のグーグル検索はあまり成功しませんでした。

4

2 に答える 2

9

conduitこれは、フュージョンに使用する (最近の) 新しい構文です。著者は、これについて少し前にブログ投稿を書きました。投稿から引用すると、彼は提案した(そして最終的にこれを実行した)

$==$、および=$=演算子 (これらはすべて互いに同義語です) を 演算子に置き換え.|ます。これは Unix シェルからの直感を借用したもので、パイプ演算子はあるプロセスから別のプロセスへのデータのパイピングを示します。類推は導管に非常によく当てはまるので、それを借りてみませんか? (これらすべての演算子を「フュージョン」と呼びます。)

余談ですが、オペレーターを調べる必要がある場合は、HayooHoogle が最適です。特定のリゾルバーのオペレーターを検索できる Stackage Hoogle (@duplode に感謝)もあります (これは最近の変更であるため、ここでは特に便利です)。

于 2016-12-03T23:21:25.163 に答える
1

.|はConduitライブラリによって導入され、と同義fuseです。

fuse
  :: Monad m => Conduit a m b -> ConduitM b c m r -> ConduitM a c m r

fuseは、関数の構成に演算子が使用されるconduitのと同じ方法で、s の構成に使用されます。.最後に、とにかく同義語だった、、および.|を置き換える新しい構文です。$==$=$=

于 2016-12-04T00:02:11.117 に答える