cost 121 ms
Monad Transformer 缺少參數(?)

[英]Monad Transformer missing parameter (?)

我有這種類型的別名: 我知道StateT具有* -> (* -> *) -> * -> *類型,因此它應該獲得三個參數。 但在上面的示例中, StateT僅接收String和IO -Monad。 現在我想知道缺少的參數傳遞給StateT的位置。 IO如此,它應該得到一個參 ...

如何測試自定義 StateT 的 Monad 實例?

[英]How to test Monad instance for custom StateT?

我正在學習 Monad Transformers,其中一項練習要求為StateT實現 Monad 實例。 我想使用有效性package 測試我的實現是否符合 Monad 法則,這類似於checkers package。 問題是,我的Arbitrary實例無法編譯。 我看到了這個問題,但它並沒有完全 ...

通過 ExceptT 實現 MonadError

[英]Implementing MonadError through ExceptT

可以合理地實現MonadError拋出一個新類型包裝ExceptT嗎? 到目前為止我有: 我知道catchError = const會編譯,但這不是我想要做的。 我基本上(認為我)希望catchError在ExceptT是“ Right ”的情況下表現得像catchError在底層 monad 上 ...

結合 StateT 和 ExceptT monad 轉換器

[英]Combining StateT and ExceptT monad tranformers

我有以下小工作程序: 現在我想在我的函數checkFoo的子函數doFoo中訪問 State Monad 的值。 例如: 我收到以下錯誤: 為什么這不起作用? 要使這項工作有效,需要進行哪些必要的更改? ...

C++23 的 optional::transform 和 optional::and_then 有什么區別?

[英]What's the difference between C++23's optional::transform and optional::and_then?

C++23 添加了一些關於可選值的“monadic 風格”功能,作為optional<T>的方法: optional<T>::and_then() (並忽略this的限定符): 如果包含的值存在,則返回調用 f 的結果。 否則,返回返回類型的空值。optional&lt ...

StateT 超時 IO

[英]Timeout on StateT with IO

我有一個自定義類型type GI a = StateT GenState IO a 其中 GenState 是 state 我保留用於生成某種隨機樹。 生成我的樹時,不能保證在合理的時間內終止。 這就是為什么我認為我可能會終止計算並在超時的情況下一遍又一遍地重新啟動它,直到給出結果。 所以我的問 ...

在解釋器的一元上下文中獲取 State 環境

[英]Getting State environment in a monadic context in an interpreter

我想習慣使用 monad 轉換器,所以我想我會使用ExceptT和State編寫一個簡單的解釋器,其中我的Ident是Map Ident Int是別名的String 。 我的語法定義看起來像 但這並不重要。 當我意識到我不知道如何實際獲取我的環境時,我開始評估標識符表達式: 是我的第一個 go ,但 ...

是否有 ReaderT 被提升為單子?

[英]Is there ReaderT raised into a monad?

我編寫了以下單子轉換器(我認為它們彼此等效),即: 這些的目的是我基本上想要一個ReaderT ,但我的環境必須在 Monad 內部訪問,它實際上不是一個固定的純值(在我的情況下,它是一個需要定期刷新的身份驗證令牌)。 我之所以認為MonadReaderT1和MonadReaderT2是等價的,是 ...

如何定義一個簡單的 KVStore 效果“mtl-style”?

[英]How to define a simple KVStore effect 'mtl-style'?

我已經對 polysemy 庫進行了一些實驗,並且喜歡使用polysemy KVStore kv ,它是 Key-Value-Store 的簡單抽象。 現在我想知道如何定義類似的效果“mtl-style”。 我是這個話題的新手,我還沒有找到很多關於如何使用 monad 轉換器設計應用程序的信息。 ...

令人困惑的 ReaderT 定義

[英]Confusing ReaderT definition

作為練習,我一直在重新實現一些常見的 monad 及其相應的轉換器; 以下是我定義的一些類型: 當我得到它時,一個變壓器將一個單子“包裹”在一個外部單子m中; 按照這種直覺,我嘗試以類似的方式定義ReaderT轉換器: 但是,我在實現它的 monad 實例時遇到了困難。 通過查看Reader ...

monad 的 monad 轉換器在 Haskell 中是唯一的嗎?

[英]Is the monad transformer of a monad unique in Haskell?

有幾個問題(例如this和this )詢問 Haskell 中的每個 monad(IO 除外)是否都有相應的 monad 轉換器。 現在我想問一個補充問題。 每個 monad 是否只有一個轉換器(或者在 IO 的情況下沒有轉換器)還是可以有多個轉換器? 一個反例是兩個 monad 轉換器,它們在應 ...

給定實例使用 Scala 貓編寫 MTL 樣式代碼的問題

[英]Problem with given instances writing MTL style code with Scala cats

我正在嘗試編寫一些 Scala 代碼以具有mtl 樣式的自定義行為。 例如,為了公開對特定效果進行抽象的“寫入數據庫”功能,我編寫了自己的類型類: trait CanPersist[M[_]]: def persistToDB[A](a: A): M[Unit] given CanPersis ...

我如何設法從 monad 轉換器打印

[英]How can I manage to print from a monad transformer

我設法獲得了 monad 轉換器 MaybeT 的編譯代碼。 (我正在關注haskell wikibook ) 但是,我似乎無法讓我的代碼打印任何東西在 ghci 上運行askPassphrase ,我得到一個 noinstance error: No instance for (Data.Fun ...


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