(#k      Safe-InferredHM A  (Model s a b) converts a stream of (a)s into a stream of (b)&s while interacting with a state (s) An effectful sink [ contramap f (v1 <> v2) = contramap f v1 <> contramap f v2 contramap f mempty = mempty A concurrent source G fmap f (c1 <> c2) = fmap f c1 <> fmap f c2 fmap f mempty = mempty  Create a  from an  1Think of the type as one of the following types:  qkeeps :: Prism' a b -> Controller a -> Controller b keeps :: Traversal' a b -> Controller a -> Controller b (keeps prism controller) only emits values if the prism matches the  controller 's output.  9 keeps (p1 . p2) = keeps p2 . keeps p1 keeps id = id K keeps p (c1 <> c2) = keeps p c1 <> keeps p c2 keeps p mempty = mempty  Create a  from a sink 1Think of the type as one of the following types:  ]handles :: Prism' a b -> View b -> View a handles :: Traversal' a b -> View b -> View a (handles prism view) only runs the view if the prism matches the input.  A handles (p1 . p2) = handles p1 . handles p2 handles id = id S handles p (v1 <> v2) = handles p v1 <> handles p v2 handles p mempty = mempty  Create a  from a  @ asPipe (p1 <-< p2) = asPipe p1 . asPipe p2 asPipe cat = id  Connect a , , and 5 and initial state into a complete application.  Create a  from a  transformation > loop (k1 >=> k2) = loop k1 >-> loop k2 loop return = cat  Initial state Program logic Effectful output and input Returns final state  !U"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefg     ! Safe-Inferred  Create a  from a N, using the given d If you're not sure what d to use, try ` Read lines from standard input Read lines from a file h@ values from a file, one value per line, skipping failed parses /Emit empty values spaced by a delay in seconds  Create a  from a O Write lines to standard output Write lines to a file i& values to a file, one value per line  Read from a j using a  k  Write to a j using a  k    l      !"#$%&'()*+,-.,/0,12,34,35,36,78,79,7:,7;,7<,7=,->,-?,-@ABCABDEFGEFHIJKIJLEMNEMO"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_"`"a"b c d e f g h ijkjlmnopqrsstuvwxyzE{|E{}E{},~,,, mvc-1.0.3MVC MVC.Prelude managed-1.0.0Control.Monad.ManagedmanagedManagedModelView ControllerasInputkeepsasSinkhandlesasPiperunMVCloopproducer stdinLinesinLinesinReadtickconsumer stdoutLinesoutLinesoutShowinHandle outHandlepipes-concurrency-2.0.2Pipes.ConcurrentInput pipes-4.1.4 Pipes.CorePipePipesListTAsPipeAsSinkAsInput$fCategory*Model$fContravariantView $fMonoidView$fMonoidController$fFunctorControllerbase Control.Monad MonadPlus Data.FoldableFoldable System.Mem performGC GHC.Conc.Sync atomicallyforkIOSTM Data.Monoid<>mconcatmappendmemptyMonoidFirstvoidmplusmzerocontravariant-1.2.0.1Data.Functor.Contravariant contramap Contravarianttransformers-0.3.0.0Control.Monad.IO.ClassMonadIOliftIO mmorph-1.0.4Control.Monad.MorphhoistMFunctorControl.Monad.Trans.Class MonadTranslift<-<discardeveryeachnextrunListT>->cat~<>~await<~~>foryield enumerateSelecttoListT Enumerable runEffectEffectProducerConsumerEffect' Producer' Consumer'Pipes.InternalProxyXspawn'spawn fromInputtoOutputrecvsendOutput UnboundedBoundedSingleLatestNewestNewBufferData.Functor.Constant getConstantConstant Text.ReadreadGHC.ShowshowGHC.IOFilePathGHC.IO.Handle.TypesHandle