úÎD=@è7      !"#$%&'()*+,-./0123456None)An initialized signal HA signal computation is a reactive computation of an initialized signal A reactive computation 'An alias for a set of event occurances %An alias for a set of event requests Request a single event >The interpreter for reactive computations. The first argument G is a function that answers event requests in the monad m, the second  is the reactive computation. @The interpreter for signal computations taking three arguments: 7 a function that answers event requests in the monad m = a function that processes the emitted values in the monad m  the signal computation. dRun two reactive computations in parallel until either completes, and return the new state of both.  Notice that    flip first == first    Alias for  lCall the continuation function of a reactive computation if it awaits at least one of the event occurences. 74Filter those event occurences that anwer a request. SRepeat the given reactive computation indefinitely, each time emitting its result. dRepeat the given signal computation indefinitely, each time emitting its initialized signal result. `Transform the emmited values of a signal computation by applying the function to each of them. mTransform the emmited values of an initialized signal computation by applying the function to each of them. yThe list function scanl is similar to foldl, but returns a list of successive reduced values instead of a single value. ' the signal variant works analogously. ÅRun the signal computation as long as the given predicate does not hold on the emitted values. Once a value is emmited on which the predicate holds, the rest of the signal computation is returned. s|foldl| on signal computations behaves the same as waiting for the signal computation to end and then applying the 8 on the list of emitted values. :Find the first emmited value on which the predicate hold. YSample the form of the signal computation at the time the reactive computation completes tRun the signal computation until the reactive computation completes, and return the new state of both computations. !¡Apply the values from the second signal computation to the values from the first signal computation over time. When one ends, the new state of both is returned. "jWait for both signal computation to become initialized, and then return both their initizialized signals. #„Emitted the pairs of the emitted values from both signal computations over time. When one ends, the new state of both is returned. $HSample the former signal computation each time the later emits a value. &5Convert a initialized signal to a signal computation '5Emit a single value in the signal computation mondad ((A signal that alway has the given form. )8Convert a reactive computation to a signal computation. */The reactive computation that never completes. +FConvert the result of a signal computation to a reactive computation. ,DConvert the result of an initialized signal a reactive computation. -:Return the result of a reactive computation if it is done .8Give the current value of a signal computation, if any. /*the head of an initalized signal, if any. 0 Version of -4 that throws an error if it the result is not done. 1nCons the values from the first signal computation to the values form the latter signal computation over time. 2”Run the initialized signals from the given signal computation in parallel, and emit the lists of the current form of all alive initialized signals. 4qMemoize the continuation function of the reactive computation, and the continuation function of all next states. 5uMemoize the reactive computation of the initialized signal, and memoize the signal computation of the tail (if any). @ 7 !"#$%&'()*+,-./01234569:;<=>?@7  !"#$%&'()*+,-./01234567   !#"$%&'()*+,./-01234569  7 !"#$%&'()*+,-./01234569:;<=>?@A      !"#$%&'()*+,-./0123456789:;<=>?@ABCD drClickOn-0.1Control.MonadicFRPISigEnd:|SigReactAwaitDoneEvOccsEvReqsEventOccurredRequestexper interpret interpretSigfirstparRupdaterepeatspawnmapimapscanliscanlbreakibreakfoldlifoldlfindatuntiliuntil<^> bothStartpairsindexByiindexByemitAllemitalwayswaitForholdresiresdonecuricurdone'consparListiparListmemomemoSigimemoSig filterOccscontainers-0.5.0.0 Data.Set.Basefoldmemof$fFunctorReact $fMonadISig $fMonadSig $fFunctorSig $fEqEvent $fOrdEvent $fMonadReact