Pointless Haskell


Pointless Haskell is library for point-free programming with recursion patterns defined as hylomorphisms. It is part of the UMinho Haskell Libraries that are being developed in the Research.PURe project. The core of the library is described in the following paper.

It also allows the visualization of the intermediate data structure of the hylomorphisms with GHood. This feature toghether with the DrHylo tool allows us to easily visualize recursion trees of Haskell functions. We first implemented this ideas using Generic Haskell, as presented in WFLP'03. We now take a different approach to genericity based on PolyP.


The latest snapshot of the UMinho Haskell Libraries can be downloaded here. The modules that comprise Pointless Haskell are the following.

Module Description
Pointless.Combinators Point-free programming combinators.
Pointless.Combinators.Uncurried Point-free definitions of uncurried versions of the basic combinators.
Pointless.Isomorphisms Auxiliary isomorphism definitions.
Pointless.Functors Definition of functors, generic maps, and sum-of-products representation.
Pointless.RecursionPatterns Definition of the typical recursion as hylomorphisms.
Pointless.Observe.Functors Definition of generic observations.
Pointless.Observe.RecursionPatterns Recursion patterns with observation of intermediate data structures.
Pointless.Examples.Examples Lots of examples.
Debug.Observe Slightly modified GHood library.


For the moment there is no documentation, but by reading the papers and looking at examples you should be able to learn it by yourself. It was only tested on GHC. I think that it should be easy to use it under Hugs.

Please send feedback to alcino@di.uminho.pt.

r8 - 12 Feb 2007 - 19:32:15 - JoseBacelarAlmeida
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Syndicate this site RSSATOM