A newbie question about Arrows.

Ross Paterson ross@soi.city.ac.uk
Tue, 7 Jan 2003 18:01:42 +0000


On Tue, Jan 07, 2003 at 06:22:53PM +0100, Nicolas.Oury wrote:
> I may be totally wrong, but I read in Hughes paper than in Stream
> Processors, Either is "more a product" than (,) . It could be interesting
> to parameter the arrow by product, in order than the multiplexing is done
> using this product when using the new notation for arrow.

The arrow notation is closely tied to products.  If you want to write
an expression containing several variables, you need a tuple containing
values for those variables (an environment).  An asynchronous stream
processor gives you a value for only one channel at a time.  Bridging
this gap won't be easy, but it's what Magnus is attempting in the work
I referenced.  Essentially he builds a tuple containing the last value
received on each channel, waiting until all channels have produced.