Hi all,
I've just put the first release of the Alloy generic programming library
on Hackage [1].
Alloy (née Polyplate) is intended to be a fairly fast blend of several
other generics approaches, such as SYB (but without the dynamic typing)
and Uniplate (but allowing an arbitrary number of target types), for
performing transformations on specific types in large tree structures.
There is a tutorial explaining how to use the library [2], the API
documentation should be live on Hackage shortly [1], and there is also a
recent draft of a paper with benchmarks and details of the inner
workings for those who are interested [3].
[1] http://hackage.haskell.org/cgi-bin/hackage-scripts/package/alloy
[2] http://twistedsquare.com/Alloy-Tutorial.pdf
[3] http://twistedsquare.com/Alloy.pdf
Thanks,
Neil.