Hi all,

In this excerpt from the Automaton page:

runAutomaton :: (ArrowLoopC a, ArrowApply a) => Automaton a (e, b) c -> a (e, Stream b) (Stream c)Source

Encapsulating an automaton by running it on a stream of inputs, obtaining a stream of outputs.

Typical usage in arrow notation:

	proc p -> do
		...
		ys <- (|runAutomaton (\x -> ...)|) xs

Here xs refers to the input stream and x to individual elements of that stream. ys is bound to the output stream.

Could someone replace the ellipses w/ an expression that would compile and make sense?
(I'm really struggling, trying to understand this example.)

Thanks!
-db