cost 278 ms
在不列出每個塊的情況下解析可迭代對象

[英]Parsing an iterable without listifying each chunk

假設我想實現 Python 可迭代對象的拆分,而不列出每個塊,類似於itertools.groupby ,其塊是惰性的。 但我想在比鍵相等更復雜的條件下進行。 所以更像是一個解析器。 例如,假設我想在一個可迭代的整數中使用奇數作為分隔符。 比如more_itertools.split_at(lamb ...

Haskell 管道中的“產量”

[英]"Yield from" in Haskell Pipes

在Haskell Pipes中,假設我正在編寫f:: Producer am ()並且我在關於m的 do 塊內(編輯:這沒有意義;我想要一個生產者 do 塊)。 在這個 do 塊中,我想在返回到我的 do 塊之前從g:: Producer am ()產生。 我如何做到這一點? 在我的特殊情況下, ...

有 Haskell 個管道的狀態生成器

[英]Stateful generators with Haskell pipes

假設我想要 model,使用 Haskell 管道,Python Generator[int, None, None]保留一些內部 state。我應該使用Producer int (State s) ()還是StateT s (Producer int m) () ,其中m是我最終希望從消費者那里得 ...

使用 State 的管道“運行”

[英]Pipes `run` with State

我有一個制片人: p:: Producer Message IO r 。 我可以使用以下方法處理所有消息: runEffect $ for p processMessage 在哪里 processMessage:: Message -> Effect IO () 。 如何使用以下方法實現有 ...

帶有默認值的管道`take`

[英]pipes `take` with default value

我有一個生產者p類型為Producer Message IO (Producer SB.ByteString IO ()) 。 現在我需要選擇性地跳過一些消息並選擇性地處理一定數量的消息: 我無法使用來自 Pipes.Prelude 的take ,因為它返回()而我需要返回一個空的生產者。 我快速 ...

如何將 IO 操作插入 Pipe

[英]how to insert an IO operation into a Pipe

我有一個 Haskell function ,它給出了一個目錄,從中遞歸地獲取所有文件並將文件名寫入文件。 這是一個簡單的例子。 在下一步中,我必須通過使用文件內容的操作替換從文件到文本的映射( transf操作); 這顯然是 IO monad 中的一個操作。 我對Pipe的了解非常有限; 我嘗試 ...

以流方式寫入文件並在達到給定 memory 文件大小時停止

[英]Writing into a file in a streaming way and stop when we reach a given memory file size

假設我想將MyItem的 stream 保存到文件中(例如在 JSON 中)。 當文件達到一定的字節大小限制時,我想停止。 我想在 Haskell 中執行此操作...流式傳輸對我來說不是問題,更重要的是如何在將每個項目放入此文件后獲取文件大小信息... ...

在 Pipes 庫中使用請求和響應進行雙向通信

[英]Using request and response in with the Pipes library for bidirectional communication

這個問題是關於 Haskell Pipes庫的 背景: 在上一個問題中,我詢問了如何使用管道形成循環, 我得到的答案是“不要那樣做。改用request和response 。” 雖然有一個優秀且編寫清晰的教程,用簡單的英語涵蓋了Producers 、 Consumers 、 Pipes和Effect ...

在haskell中將管道組合成一個循環或循環

[英]Composing Pipes into a loop or cycle in haskell

這個問題是關於 Haskell 庫Pipes 的。 此問題與 2019 Advent of Code Day 11 (可能劇透警告)有關 我有兩個Pipe Int Int mr brain和robot ,它們也需要在連續循環中相互傳遞信息。 這是輸出brain需要去的輸入robot的輸出和robo ...

如何在Haskell中通過管道使用ZMQ用戶

[英]How to use a ZMQ subscriber in Haskell with pipes

我可以讓ZMQ訂戶在Haskell中工作,但希望能獲得有關如何在Pipes中使用該數據的指導。 我寫生產者的嘗試在“堆棧生成”中失敗,並出現以下錯誤: 無法將類型“代理X()c'0 c0(ZMQ z)”與“ ZMQ z”進行匹配 預期類型:ZMQ z() 實際類型:代 ...

通過agreggateId通過流進行分組(Haskell /並發流)

[英]GroupBy of stream by agreggateId (Haskell / concurrency streaming)

上下文 :我正在CQRS中實現一個App,並且正在嘗試優化命令的處理(基本上是通過匯總ID的1個流)... 問題 :我想擁有第一個流來接收所有命令,並通過它們的集合ID在不同線程上分派這些命令: 1)集合中的命令以串行方式處理 2)聚合獨立(並行)處理其命令。 解決方案 : ...

如何通過每次傳入重置的超時來管道?

[英]How would I pipe with a timeout that resets with each incoming?

withTimeout函數假設管道ConsoleEvent ,如果沒有收到任何內容,則每隔s :: Int秒發送一次CeTimeout 。 相反,它無法在適當的時間發送CeTimeout事件。 如果大於s秒且原始事件丟失,則會將一個CeTimeout事件替換為其他事件。 此外,而不是一個C ...

我怎么知道我的Haskell程序中可以拋出異常?

[英]How do I know where in my Haskell Program an Exception can be Thrown?

我正在開發一個1-10k線路的個人Haskell項目,我正在使用Pipes.Concurrent生成的工人內部使用各種IO庫,例如Network.HTTP.Conduit。 我剛剛意識到其中一些IO庫在邊緣情況下拋出異常。 有沒有辦法讓GHC給我關於未捕獲異常的編譯時警告? 找出庫 ...

處理Streaming庫中的sum編碼

[英]Handling sum encoding in Streaming libraries

這個問題背后的動機是這種情況 - 我們有一個由Sum編碼表示的值流。 讓我們假設Either ByteString ByteString ,其中我們分別表示錯誤和良好狀態的字節流。 現在,我們有另一個可以壓縮ByteString流的函數。 是否可以在Either ByteString By ...

管道和分叉與Control.Concurrent.MonadIO

[英]pipes and fork with Control.Concurrent.MonadIO

在下面的代碼中,我試圖將2個Producer s組合成1.所有類型都相同。 它們將由兩個輸入Producer的每一個組合在一個單獨的線程中運行,並由Consumer ,將Consumer放入一個unagi chan(我使用unagi chan來提高性能)。 返回一個從chan讀取的生產者。 ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM