[Haskell-cafe] ANNOUNCE: arrow-list. List arrows for Haskell.

Sebastian Fischer fischer at nii.ac.jp
Sun Nov 7 06:33:34 EST 2010


> I'm planning to write up a blog post about using list arrows for XML  
> processing.

Ok, I'll say tuned! Maybe a smaller example for the Haddock docs needs  
less time.

> Maybe this sounds weird on the Haskell mailing list, but at Silk[1]  
> we have a full implementation of (functional reactive) list arrows  
> in JavaScript. The arrows build up an AST of operations that we  
> statically optimize to a more efficient form. This is needed because  
> JavaScript itself is not going to fuse intermediate list for you.
>
> I'm reinventing all of this in Haskell now to gain more insight in  
> what we've actually done in JavaScript. :-)

Sounds more interesting than weird to me. In case you blog about that  
too, I'll probably read it. I'm interested to get an intuition what  
you can do with arrows and what not. An intuition that goes beyond the  
quite abstract "you can't choose different computation paths based on  
the result of a computation". Can you, for example, define a `perm`  
arrow that yields every permutation of it's input? Monadic  
implementations look like they need `>>=` but there may be another  
way.. Maybe you now have an example for the docs ;o)

> I'm also planning to investigate whether it is possible (useful) to  
> perform the list computations (the map in concatMap) in parallel.  
> I'm not sure if someone has already tried this for list monads.

I tried something similar a while ago (for monads):

     <http://www-ps.informatik.uni-kiel.de/~sebf/haskell/speedup-search-with-parallelism.lhs.html 
 >


Sebastian

P.S.

In

> [1] https://blog.silkapp.com/2009/12/reinventing-xslt-in-pure-javascript/

there are two occurrences of the `sum` function which should probably  
be `alt` instead.


More information about the Haskell-Cafe mailing list