| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
FRP.Titan.Debug.Yampa
Description
Replacement of Yampa's reactimate function with more fine-tuned
control and debugging capabilities.
See FRP.Titan.Debug.CommTCP for a communication bridge using TCP sockets.
Synopsis
- reactimateControl :: forall p a b. (Read p, Show p, Show a, Read a, Show b, Read b, Pred p a b) => ExternalBridge -> Preferences -> [Command p] -> IO a -> (Bool -> IO (DTime, Maybe a)) -> (Bool -> b -> IO Bool) -> SF a b -> IO ()
- data ExternalBridge = ExternalBridge {}
- data Preferences = Preferences {}
- defaultPreferences :: Preferences
- data Command p
- class Read p => Pred p i o | p -> i, p -> o where
Debugging
Arguments
| :: (Read p, Show p, Show a, Read a, Show b, Read b, Pred p a b) | |
| => ExternalBridge | Debug: Communication bridge for the interactive GUI |
| -> Preferences | Debug: Debugging preferences |
| -> [Command p] | Debug: List of commands (exposed only to facilitate fixing the type of predicates p) |
| -> IO a | FRP: Initial sensing action |
| -> (Bool -> IO (DTime, Maybe a)) | FRP: Continued sensing action |
| -> (Bool -> b -> IO Bool) | FRP: Rendering/consumption action |
| -> SF a b | FRP: Signal Function that defines the program |
| -> IO () |
Start a Yampa program with interactive debugging enabled.
Communication bridge
data ExternalBridge Source #
Configuration layer to communicate the FRP app and the debugging GUI.
Constructors
| ExternalBridge | |
Debugging preferences
defaultPreferences :: Preferences Source #
Default simulation preferences that do not dump the input to the log every cycle.
Debugging commands
An interactive, debugging command.