The bff package

[ Tags: data, library, public-domain ] [ Propose Tags ]

This is an implementation of the ideas presented in "Bidirectionalization for Free!" (paper at POPL'09) by Janis Voigtlaender.

It also includes an automatic deriver for the Zippable type class.

Using the cabal flag "binaries" will enable the creation of a web frontend to bff, in the form of a CGI program. Make sure you understand the security implications before allowing untrusted access to the script.

Using the cabal flag "stats" will generate programs that collect performance statistics about bff and print them as a table.

Using the cabal flag "render" will generate a program that renders collected performance statistics as PDF files.


Versions 0.1, 0.2, 0.3, 0.3.1,,
Dependencies base, benchpress (==, bimap (==0.2.3), category-extras (==0.53.5), cgi, Chart (==0.8), containers, derive (==0.1.1), directory, haskell98, hint, mtl, template-haskell, unix, utf8-string, xhtml [details]
License PublicDomain
Author Janis Voigtlaender, Joachim Breitner
Maintainer Janis Voigtlaender
Category Data
Uploaded Sun Nov 2 11:42:55 UTC 2008 by JanisVoigtlaender
Distributions NixOS:
Executables bff-stats-render, bff-stats-print, bff-stats, bff-cgi, bff-shell
Downloads 2368 total (38 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2017-01-02 [all 8 reports]
Hackage Matrix CI


  • Data
    • Data.Bff
    • Data.IntMapEq
    • Data.IntMapOrd
    • Data.Zippable
  • SimpleTree



Build the binaries bff-shell and bff-cgi


Build the stats-generating and -printing programs


Build the stats-rendering program


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees