On Mon, Dec 17, 2012 at 4:06 PM, José Pedro Magalhães <jpm@cs.uu.nl> wrote:
Hi Ravi,

You might want to browse through "Comparing Libraries for Generic Programming in Haskell": http://www.cs.uu.nl/research/techreps/repo/CS-2008/2008-010.pdf

SYB and Uniplate are two widely used and well-maintained systems for strategic traversals over arbitrary datatypes. There are other options, too, but it depends on exactly what you want to do.

My interest is language processing for which stratego, strafunski, UUAG etc are specially tailor-made.  Yes Ive read the 'comparing libraries' paper in which it says that strafunski and SYB approaches are so similar that strafunski is subsumed under SYB for the purposes of that paper.

However it seems that the strafunski-ecosystem being integrated with aterm etc, likewise stratego, are more suited to full-scale language processing.