packages feed

kangaroo-0.4.0: kangaroo.cabal

name:             kangaroo
version:          0.4.0
license:          BSD3
license-file:     LICENSE
copyright:        Stephen Tetley <stephen.tetley@gmail.com>
maintainer:       Stephen Tetley <stephen.tetley@gmail.com>
homepage:         http://code.google.com/p/copperbox/
category:         Parsing
synopsis:         Binary parsing with random access.
description:
  Binary parsing with random access. The target file to be 
  parsed is loaded into memory at the start (represented as
  an IOUArray Int Word8). Parsing proceeds by moving a cursor
  around, the array is left intact. This allows _jumping_
  inside the file and contrasts with other parser 
  combinators that progress via consuming input.
  .
  \* Caveat \* - the above of course means that the target file 
  is obliged to be small enough to fit into memory. 
  .
  \*\* MAJOR CAVEAT \*\* - kangaroo is somewhat half-baked (maybe 
  now two thirds baked). The parsing machinery seems good but the 
  combinators need more work. It\'s on Hackage because I'm using 
  it with Hurdle which was already on Hackage and the techinique
  of moving a cursor rather than consuming input seems at least 
  interesting.
  .
  Currently kangaroo is twinned with its own library of formatting
  combinators (JoinPrint), at some point this is may go in its a 
  separate package.
  .
  Changelog:
  .
  0.4.0 Changed JoinPrint to have distinct types for single-line
  documents (Doc) and multi-line documents (VDoc). This is 
  because single-line docs track their horizontal length.
  .
  Added a 'skip' primitive to the Parse Monad. Added 'local' and
  'asks' to the Reader top-level modules.
  .
  0.3.0 Documented the primitive parsers. @char@ renamed @anyChar@
  to match Parsec\'s convention. Rationalized exports from 
  ParseMonad module.
  .
  0.2.0 Changes to ParseMonad - parsing within a region simplified, 
  temporarily added JoinPrint.
  . 
  0.1.0 First version.
  .

build-type:         Simple
stability:          half baked
cabal-version:      >= 1.2

extra-source-files:
  demo/AR.hs


library
  hs-source-dirs:     src
  build-depends:      base < 5,
                      array >= 0.2.0.0 && < 0.4

  
  exposed-modules:
    Data.ParserCombinators.Kangaroo,
    Data.ParserCombinators.KangarooReader
    Data.ParserCombinators.KangarooRWS,
    Data.ParserCombinators.KangarooState,
    Data.ParserCombinators.KangarooWriter,
    Text.PrettyPrint.JoinPrint

  other-modules:
    Data.ParserCombinators.Kangaroo.Combinators,
    Data.ParserCombinators.Kangaroo.Debug,
    Data.ParserCombinators.Kangaroo.IEEEFloat,
    Data.ParserCombinators.Kangaroo.ParseMonad,
    Data.ParserCombinators.Kangaroo.Prim,
    Data.ParserCombinators.Kangaroo.Region,
    Data.ParserCombinators.Kangaroo.Utils,
    Text.PrettyPrint.JoinPrint.Core,
    Text.PrettyPrint.JoinPrint.HexDump,
    Text.PrettyPrint.JoinPrint.JoinString
      
  extensions:
    

  ghc-options:
  
  includes: