3
我正在使用blaze-html。我终于能够围绕如何使用它了,但是一些monad和转换真的让我一直绊倒我。但是这里有一个特别的绊脚石(出了很多,但我会离开这里再到这里来Happstack的Response和ServerPart单子)。Markup monad如何与Html monad关联?
如果我想字符串文本附加到段落,我要使用此功能(从Text.Blaze.Html5):
p . toHtml :: ToMessage a => a -> Html
所有,很好,除了...
toHtml :: ToMarkup a => a -> Markup
p :: Html -> Html
我已经尽我所能搜索了文档,我看不到Markup monad和Html monad是如何与另一个相关联的。我如何处理所有类型和类型类?
奇数。我从本地的cabal/haddock文档开始了Text-Blaze-Html5.html,并且Html链接实际上指向了Text-Blaze-Internal.html。从那里,Html被定义为HtmlM(),它本身被定义为具有很多实例的“data HtmlM a”。没有一个链接指向Text.Blaze.Html中的定义。 –
也许你有一个旧版本的库? –
该文档似乎来自旧版本,@ SavanniD'Gerinel,在blaze-html-0.4。*中,'toHtml'的类型是'ToHtml a => a - > Html',并且没有'Markup'那里。 –