簡體   English   中英

Haskell在StateT a STM b中的IO動作

[英]Haskell IO action in `StateT a STM b`

我想在StateT a STM b內部運行randomIO但出現此錯誤:

Expected type: StateT Session STM Float
  Actual type: IO Float

因此,我嘗試從Control.Monad.Trans.Class (由State的Strict模塊重新導出)中進行lift

Expected type: StateT Session STM Float
  Actual type: StateT Session IO Float

距離較近,但距離那里不遠。 我無法liftIO因為STM沒有MonadIO實例。

我如何才能編譯它,以便可以在randomIO STM內部運行StateT

根據評論,我正在嘗試一些愚蠢的事情。 相反,我使用randomRs (0.0, 1.0) g向函數傳遞了我需要的隨機Float列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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