packages feed

dynamic-pp-0.1.0: dynamic-pp.cabal

Name:                   dynamic-pp
Category:               Text
Version:                0.1.0
License:                BSD3
License-File:           LICENSE
Author:                 Eric McCorkle
Maintainer:             Eric McCorkle <emc2@metricspace.net>
Stability:              Alpha
Synopsis:               A pretty-print library that employs a dynamic programming algorithm for optimal rendering.
Homepage:               https://github.com/emc2/dynamic-pp
Bug-Reports:            https://github.com/emc2/dynamic-pp/issues
Copyright:              Copyright (c) 2015 Eric McCorkle.  All rights reserved.
Description:
  This library provides pretty-print operators similar to the set provided by the Wadler-Leijin pretty-printer.
  The main difference, however, is that it utilizes a dynamic programming algorithm for rendering.  This slightly
  reduces the available combinators, but provides a layout engine that optimizes documents, minimizing their
  over-wrap and line count.
  .
  The dynamic programming algorithm has pathological cases that cause it to run in quadratic time; however,
  typical use on code-like programs should see better run times.  In general, documents with many uses of the
  choose combinator will require more time to render.
  .
  This library also provides two simpler rendering engines for uses where the full optimal layout engine is not
  necessary.  These engines are much simpler and consume fewer resources.
Build-type:             Simple
Cabal-version:          >= 1.16

Source-Repository head
  Type: git
  Location: git@github.com:emc2/dynamic-pp.git

Test-Suite UnitTest
  default-language:     Haskell2010
  type:                 exitcode-stdio-1.0
  Main-Is:              UnitTest.hs
  hs-source-dirs:       src test
  build-depends:        base >= 4.4.0 && < 5, Cabal >= 1.16.0, hashable, bytestring,
                        utf8-string, blaze-builder, ansi-terminal, unordered-containers,
                        HUnit-Plus
  ghc-options:          -fhpc

Library
  default-language:     Haskell2010
  hs-source-dirs:       src
  build-depends:        base >= 4.4.0 && < 5, Cabal >= 1.16.0, hashable, bytestring,
                        utf8-string, blaze-builder, ansi-terminal, unordered-containers
  exposed-modules:      Text.Format