Description
Generic Programming Use in Hackage.
README.md
GP analysis of Hackage README
For the report and documentation of the project, check the file report.pdf
There is also the presentation we gave at the file presentation.pdf
Building
runghc Setup.lhs configure
runghc Setup.lhs build
runghc Setup.lhs install
Before running
You have to fetch the the entire hackage repository and its activity log. You can automatically do that with:
gpah --fetch
Running the analysis
After building the program, run it with
gpah args
Generic Programming Use in Hackage Project v0.0.1
gpah [OPTIONS]
Common flags:
--fetch Fetch the Hackage archive tarball and Hackage
activity log
-d --deriving[=FILE] Run the deriving analysis and output it to the
specified file
-f --function[=FILE] Run the function analysis and output it to the
specified file
-u --uniplate[=FILE] Run the uniplate analysis and output it to the
specified file
-h --misc_hackage[=FILE] Print general analysis info or output it to the
specified file
-t --misc_date[=FILE] Get syb+uniplate date info and output it to the
specified file (implies --misc_hackage)
--hackage-dir=DIR Set the hackage archive directory
--hackage-log=FILE Set the hackage archive log file
-c --cpp[=FILE] Run preprocessing in hackage that yields an
analysis with less failed-to-parse modules
-i --interpret[=FILE] Do type-checking interpretation on modules that
depend on SYB or Uniplate
-e --derive[=FILE] Do analysis on packages that build on derive
-? --help Display help message
-V --version Print version information
For a detailed description of the accepted arguments run:
gpah --help
.