packages feed

RefSerialize-0.2.3: RefSerialize.cabal

name:                RefSerialize
version:             0.2.3
synopsis:            Write to and read from Strings maintaining internal memory references 
description:         
                     Read, Show and Data.Binary do not check for pointers to the same address 
                     as a result, the data is duplicated when serialized. This is a waste of space in the filesystem 
                     and  also a waste of serialization time. but the worst consequence is that, when the serialized data is read,
                     it allocates multiple copies for the same object referenced multiple times. Because multiple referenced
                     data is very typical in a pure language such is Haskell, this means that the resulting data loose the beatiful 
                     economy of space and processing time that referential transparency permits.
                     
                     This package allows the serialization and deserialization of large data structures without duplication of data, with
                     the result of optimized performance and memory usage. It is also useful for debugging purposes.
                     
                     There are automatic derived instances for instances of Read/Show. Lists of non-chars have its own instance.
                     The deserializer contains a subset of Parsec.Token for defining deserializing parsers. 
                     
                     Every instance of Show/Read is also a instance of Data.RefSerialize
                     
                     the serialized string has the form "expr( var1, ...varn) where  var1=value1,..valn=valueN " so that the
                     string can ve EVALuated. So the entire deserialization can be substituted by eval.
                     
                     See demo.hs and tutorial. I presumably will add a entry in haskell-web.blogspot.com
                     
                     To develop: -derived instances for Data.Binary
                                 -serialization to/from ByteStings
                     

category:            Parsing
license:             BSD3
license-file:        LICENSE
author:              Alberto Gómez Corona
maintainer:          agocorona@gmail.com
Tested-With:         GHC == 6.8.2
Build-Type:          Simple
build-Depends:       base,containers
Cabal-Version:       >= 1.2

exposed-modules:     Data.RefSerialize, Data.Parser, Data.Serialize
ghc-options: