Metadata revisions for syntax-1.0.0.0

Package maintainers and Hackage trustees are allowed to edit certain bits of package metadata after a release, without uploading a new tarball. Note that the tarball itself is never changed, just the metadata that is stored separately. For more information about metadata revisions, please refer to the Hackage Metadata Revisions FAQ.

No. Time User SHA256
-r2 (syntax-1.0.0.0-r2) 2015-11-19T04:05:20Z pawel834 3959bcb0cea2f2e1d1bf643306962551f6888b0db888beb632477c7929e6966d
  • Changed description from

    UPDATE: I have a lot of work now and so I haven't updated the library in a while. However once I get some free time I will probably rewrite it with a new, cleaner design (focused more on adjoints then isomorphisms). Consider this package very experimental :)
    
    "syntax" allows you to write a single syntax description and instantiate is both as a parser and a pretty printer.
    
    Syntax descriptions are written in applicative or arrow style. The library uses a custom typeclass hierarchy, provided
    by the "semi-iso" package. Most of the time you will be using operators like '/$/', '/*/' and '/+/' (= '<|>'), just
    like parser combinators. When more power is needed - e.g. when the syntax depends on the parsed or printed value -
    you turn to arrows.
    
    Semi-isomorphisms from "semi-iso" are the basic building block of syntax descriptions. I recommend reading
    the hackage page of "semi-iso" first, as it contains much more information.
    
    Once you write a syntax description (polymorphic in the syntax category) you can instantiate it both as a parser or as
    a pretty-printer. The library "syntax-attoparsec" gives you the ability to extract an Attoparsec parser. Pretty-printing
    is implemented by the "syntax-printer" library, which uses Text and ByteString builders. (Note that formatting is handled
    by "syntax" itself, not by the printer library)
    
    Advanced formatting and parsing (for example indentation, haskell layout rule) is implemented as category transformers
    (similar to monad transformers). Currently only simple indentation is implemented (in "Data.Syntax.Indent") - basically
    a reader category transformer that tracks current indentation level. I plan on implementing Haskell layout rule in the
    future.
    
    The library can work with both text and binary data. Alas, there are no binary combinators implemented yet.
    
    EXAMPLES! See @syntax-example@ and @syntax-example-json@ for examples.
    
    * "syntax-example" implements a simple lambda calculus.
    
    * "syntax-example-json" implements a json parser and pretty printer.
    to
    "syntax" allows you to write a single syntax description and instantiate is both as a parser and a pretty printer.
    
    Syntax descriptions are written in applicative or arrow style. The library uses a custom typeclass hierarchy, provided
    by the "semi-iso" package. Most of the time you will be using operators like '/$/', '/*/' and '/+/' (= '<|>'), just
    like parser combinators. When more power is needed - e.g. when the syntax depends on the parsed or printed value -
    you turn to arrows.
    
    Semi-isomorphisms from "semi-iso" are the basic building block of syntax descriptions. I recommend reading
    the hackage page of "semi-iso" first, as it contains much more information.
    
    Once you write a syntax description (polymorphic in the syntax category) you can instantiate it both as a parser or as
    a pretty-printer. The library "syntax-attoparsec" gives you the ability to extract an Attoparsec parser. Pretty-printing
    is implemented by the "syntax-printer" library, which uses Text and ByteString builders. (Note that formatting is handled
    by "syntax" itself, not by the printer library)
    
    Advanced formatting and parsing (for example indentation, haskell layout rule) is implemented as category transformers
    (similar to monad transformers). Currently only simple indentation is implemented (in "Data.Syntax.Indent") - basically
    a reader category transformer that tracks current indentation level. I plan on implementing Haskell layout rule in the
    future.
    
    The library can work with both text and binary data. Alas, there are no binary combinators implemented yet.
    
    EXAMPLES! See @syntax-example@ and @syntax-example-json@ for examples.
    
    * "syntax-example" implements a simple lambda calculus.
    
    * "syntax-example-json" implements a json parser and pretty printer.

-r1 (syntax-1.0.0.0-r1) 2015-02-08T19:58:35Z pawel834 7f3d7f3a8c8aedb78145f4d8a992815cdb644d839a5431b23e5fad0a62d7dd5c
  • Changed description from

    "syntax" allows you to write a single syntax description and instantiate is both as a parser and a pretty printer.
    
    Syntax descriptions are written in applicative or arrow style. The library uses a custom typeclass hierarchy, provided
    by the "semi-iso" package. Most of the time you will be using operators like '/$/', '/*/' and '/+/' (= '<|>'), just
    like parser combinators. When more power is needed - e.g. when the syntax depends on the parsed or printed value -
    you turn to arrows.
    
    Semi-isomorphisms from "semi-iso" are the basic building block of syntax descriptions. I recommend reading
    the hackage page of "semi-iso" first, as it contains much more information.
    
    Once you write a syntax description (polymorphic in the syntax category) you can instantiate it both as a parser or as
    a pretty-printer. The library "syntax-attoparsec" gives you the ability to extract an Attoparsec parser. Pretty-printing
    is implemented by the "syntax-printer" library, which uses Text and ByteString builders. (Note that formatting is handled
    by "syntax" itself, not by the printer library)
    
    Advanced formatting and parsing (for example indentation, haskell layout rule) is implemented as category transformers
    (similar to monad transformers). Currently only simple indentation is implemented (in "Data.Syntax.Indent") - basically
    a reader category transformer that tracks current indentation level. I plan on implementing Haskell layout rule in the
    future.
    
    The library can work with both text and binary data. Alas, there are no binary combinators implemented yet.
    I will implement them when i have the time (but these category transformers look so much more interesting for now ;).
    
    EXAMPLES! See @syntax-example@ and @syntax-example-json@ for examples.
    
    * "syntax-example" implements a simple lambda calculus.
    
    * "syntax-example-json" implements a json parser and pretty printer.
    to
    UPDATE: I have a lot of work now and so I haven't updated the library in a while. However once I get some free time I will probably rewrite it with a new, cleaner design (focused more on adjoints then isomorphisms). Consider this package very experimental :)
    
    "syntax" allows you to write a single syntax description and instantiate is both as a parser and a pretty printer.
    
    Syntax descriptions are written in applicative or arrow style. The library uses a custom typeclass hierarchy, provided
    by the "semi-iso" package. Most of the time you will be using operators like '/$/', '/*/' and '/+/' (= '<|>'), just
    like parser combinators. When more power is needed - e.g. when the syntax depends on the parsed or printed value -
    you turn to arrows.
    
    Semi-isomorphisms from "semi-iso" are the basic building block of syntax descriptions. I recommend reading
    the hackage page of "semi-iso" first, as it contains much more information.
    
    Once you write a syntax description (polymorphic in the syntax category) you can instantiate it both as a parser or as
    a pretty-printer. The library "syntax-attoparsec" gives you the ability to extract an Attoparsec parser. Pretty-printing
    is implemented by the "syntax-printer" library, which uses Text and ByteString builders. (Note that formatting is handled
    by "syntax" itself, not by the printer library)
    
    Advanced formatting and parsing (for example indentation, haskell layout rule) is implemented as category transformers
    (similar to monad transformers). Currently only simple indentation is implemented (in "Data.Syntax.Indent") - basically
    a reader category transformer that tracks current indentation level. I plan on implementing Haskell layout rule in the
    future.
    
    The library can work with both text and binary data. Alas, there are no binary combinators implemented yet.
    
    EXAMPLES! See @syntax-example@ and @syntax-example-json@ for examples.
    
    * "syntax-example" implements a simple lambda calculus.
    
    * "syntax-example-json" implements a json parser and pretty printer.

-r0 (syntax-1.0.0.0-r0) 2014-12-12T23:30:44Z pawel834 cfe42196f9c0ca1d7f31b5876eb794ff7b485e896e31d8c4dc4fbc62ef3f91f1