[Haskell-cafe] ANNOUNCE: arrow-list. List arrows for Haskell.
Sebastiaan Visser
haskell at fvisser.nl
Sat Nov 6 09:00:56 EDT 2010
Hi all,
Live from the Hackaton in Ghent, Belgium, I present the first release of the arrow-list[1,2] package. List arrows are a powerful tool when processing XML, building query languages and lots of other domains that build on functions that might return more than one value as their output.
This package is inspired by the arrow combinators provided by the HXT package, but in my opinion list arrows deserve to be on Hackage on their own.
Cheers,
Sebastiaan
[1] http://hackage.haskell.org/package/arrow-list
[2] https://github.com/sebastiaanvisser/arrow-list
------------------------------------------------------------------------
(package description)
List arrows for Haskell.
This small Haskell library provides some type class, types and functions to
work with list arrows. List arrows represent computations that may return
multiple outputs. Making functions that return lists an instance of both the
`Category` and `Arrow` type classes allow you to easily compose multiple
computations into one with standard building blocks.
This package provides:
- A type class `ArrowList` for embedding functions that produce a list of
outputs into _some_ list arrow.
- A list of utility functions for working with list-arrows, these functions
are based on the `ArrowList` type class so they are not tied one specific
instance.
- A concrete list arrow type that is implemented as a `Kleisli` arrow over
the `ListT` list monad transformer. In short, you can both build pure list
arrows and list arrows that produce tributary effects.
- Not list arrow specific: A type class `ArrowKleisli` for embedding monadic
computations into an arrow.
More information about the Haskell-Cafe
mailing list