
Hey, I have a simple SDL based graphic demo, which I am trying (for educational purposes) to rewrite utilizing netwire. The demo basically consists of a State which contains a list of object states. data ObjectState = ... data State = State [ObjectState] Then there is a function updateState which updates all objects, removing some and adding some new ones. updateState :: State -> State updateState (State oss) = State (catMaybes $ map updateObject $ newObjects ++ oss) where updateObject :: ObjectState -> Maybe ObjectState updateObject = ... newObjects :: [ObjectState] newObjects = ... OK, now I wrote a wire: type MyWire = Wire.Wire () (Kleisli IO) wire :: GameState -> MyWire () GameState wire initGS = proc _ -> do rec gs' <- Wire.delay initGS -< gs gs <- arr updateState -< gs' returnA -< gs Works wonderfully :). But I avoided rewriting "updateState" in wire format. But I have no Idea how to do that. How do I handle a dynamic list of objects in a wire? Thanks! Nathan