final-pretty-printer: Extensible pretty printing with semantic annotations and proportional fonts

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.


This is the Final Pretty Printer, an extensible prettry printing library that supports semantic annotations and proportional-width fonts. The library is extensible because it uses a final, rather than initial, encoding of pretty printer documents - they are monadic programs, rather than a datatype. This means it can be extended by monad transformers. Semantic annotations allow pretty printer documents to contain references to the data that they represent, which can enable interactive output. Proportional-width fonts are supported by allowing the measurement of widths to be performed in some arbitrary monad, so IO can be used to look at the output of a font rendering library.


Change logNone available
Dependenciesansi-terminal (==0.6.*), base (>=4.3 && <4.10), containers (==0.5.*), exceptions (==0.8.*), mtl (>=2.1 && <2.3), temporary (>=1.1), text (==1.2.*) [details]
CopyrightCopyright (c) 2016-2017 David Darais, David Christiansen, and Weixi Ma
AuthorDavid Christiansen and David Darais and Weixi Ma
Source repositoryhead: git clone git://
UploadedThu May 25 00:53:27 UTC 2017 by dchristiansen




Maintainers' corner

For package maintainers and hackage trustees