pointful: Pointful refactoring tool

[ bsd3, development, library, program ] [ Propose Tags ]

Stand-alone command-line version of the pointful plugin for Lambdabot.

[Skip to Readme]
Versions [faq] 1.0, 1.0.1, 1.0.2, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9,,
Change log CHANGELOG.md
Dependencies base (>=4.7 && <4.13), containers (>=0.4 && <0.7), haskell-src-exts-simple (>=1.18 && <1.22), mtl (>=2 && <2.3), pointful, syb (>=0.3 && <0.8), transformers (>=0.2 && <0.6) [details]
License BSD-3-Clause
Author Thomas Jäger, Bertram Felgenhauer, James Cook et al.
Maintainer Mikhail Glushenkov <mikhail.glushenkov@gmail.com>
Revised Revision 2 made by MikhailGlushenkov at Tue May 14 10:53:53 UTC 2019
Category Development
Home page http://github.com/23Skidoo/pointful
Source repo head: git clone https://github.com/23Skidoo/pointful.git
this: git clone https://github.com/23Skidoo/pointful.git(tag pointful-
Uploaded by MikhailGlushenkov at Tue Mar 20 12:41:31 UTC 2018
Distributions NixOS:
Executables pointful
Downloads 7164 total (137 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2018-03-20 [all 1 reports]




Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees

Readme for pointful-

[back to package description]

pointful Build Status

Stand-alone command-line version of the pointful plugin for Lambdabot.

This tool transforms Haskell expressions from the implicit pointfree style to the explicit pointful style. This makes it easier to understand such expressions.

For example, consider the expression max 100 . uncurry max, which is in pointfree style. In pointful style, this becomes \ tuple -> max 100 ((uncurry max) tuple). With a little additional investigation around uncurry max, it can be determined that this expression takes a 2-tuple and returns the maximum of its elements and 100.


cabal install pointful


$ pointful "max 100 . uncurry max"
\ c -> max 100 ((uncurry max) c)


Pointful plugin code taken from Lambdabot. Originally written by Thomas J├Ąger (?).