小编Aks*_*hat的帖子

Zipper用于创建xml请求?

如何创建XML符合XSD请求有效的请求?

一种方法是创建整个请求,然后在其上进行验证XSD.有没有办法在走模式时创建请求?

想到的第一个想法是Zipper,但我真的不确定它们是否可以在这里使用.

也许我还没有理解它,但如果已经定义了一些结构并且需要在该结构中进行更改,那么Zipper似乎很棒.Zipper可以用于改变结构吗?(例如,将序列附加到序列数组?)

xml haskell zipper

48
推荐指数
1
解决办法
866
查看次数

ForkIO与stateT

我们如何让用户传递一个eventHandler,它使用stateMonad但是在一个单独的线程中调用?例如,在以下示例中,应该如何调用forkIO以便eventHandler可以调用操作?我是Haskell的新手,请纠正我,如果这是一个错误的API暴露给用户?

data MyTypeResult a = MyTypeValue a
data MyTypeState = MyTypeState {_counter :: Int}

newtype MyType a = MyType {
      unMyType :: StateT MyTypeState IO (MyTypeResult a)
}

instance Monad MyType where
    (>>=) = myTypeBind
    return = myTypeReturn
    fail = myTypeFail

myTypeBind = undefined
myTypeReturn = undefined
myTypeFail = undefined

type Event = String
type Handler =  Event -> MyType ()

doSomethingAwesome :: MyType Event
doSomethingAwesome = undefined

operate :: String -> MyType ()
operate = undefined

start :: Handler …
Run Code Online (Sandbox Code Playgroud)

haskell

2
推荐指数
1
解决办法
598
查看次数

标签 统计

haskell ×2

xml ×1

zipper ×1