【问题标题】:How does one inspect values inside the Handler Monad in ghci?如何在 ghci 中检查 Handler Monad 中的值?
【发布时间】:2011-12-24 00:18:57
【问题描述】:

我有一个类型 Handler [Maybe AvailableDay] 我想检查 ghci 中 [Maybe AvailableDay] 的内容。我该怎么做?

【问题讨论】:

    标签: haskell types yesod


    【解决方案1】:

    您不能简单地提取Handler 的“内容”,因为Handler 实际上是一个取决于当前请求、会话状态等的计算。所以为了运行它,你必须喂它所有的东西。这将涉及使用runHandler,然后是unYesodApp,然后在生成的Iteratee 上使用run。在技​​术上是可行的,但要自己做却非常麻烦。

    如果您认为该值不依赖于其中任何一个,那么您应该能够将其重写为纯计算或 IO monad 中的一个,这样运行起来应该会简单得多。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-12
      • 2014-01-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多