intern-0.9.1: intern.cabal
name: intern
category: Data, Data Structures
version: 0.9.1
license: BSD3
cabal-version: >= 1.6
license-file: LICENSE
author: Edward A. Kmett
maintainer: Edward A. Kmett <ekmett@gmail.com>
stability: experimental
homepage: http://github.com/ekmett/intern/
bug-reports: http://github.com/ekmett/intern/issues
copyright: Copyright (C) 2011 Edward A. Kmett
build-type: Simple
synopsis: Efficient hash-consing for arbitrary data types
description:
Changes from 0.8 to 0.9
.
* Removed 'identity' from the Interned class, to support applications where the identity is obtained by other means (e.g. a unique Ptr value)
.
Changes from 0.7 to 0.8
.
* Disabled cache removal as it was causing problems on large data sets. There is no good way to ensure that both references remain alive long enough to finish comparisons.
* Switched to IORef from MVar
.
Changes from 0.6 to 0.7
.
* Fixed problem where comparisons could happen between data structures while one was still a thunk, leading to equal structures comparing as inequal in limited circumstances, by appropriately using strictness annotations.
.
Efficient hash-consing for arbitrary data types
.
Changes from 0.5.2 to 0.6
.
* Widened the caches so they don't go through a single MVar per type. This has made a dramatic impact on performance. However, this broke the previous invariant that newer entries always had higher Ids than older entries.
.
Changes from 0.5.1 to 0.5.2
.
* Added Data.Interned.IntSet
extra-source-files: examples/Term.hs .travis.yml
source-repository head
type: git
location: git://github.com/ekmett/intern.git
library
build-depends:
base >= 4 && < 5,
bytestring >= 0.9 && < 0.11,
text == 0.11.*,
hashable == 1.1.*,
unordered-containers >= 0.2.1 && < 0.3,
array >= 0.3 && < 0.5
exposed-modules:
Data.Interned
Data.Interned.ByteString
Data.Interned.String
Data.Interned.Text
Data.Interned.IntSet
Data.Interned.Internal
Data.Interned.Internal.ByteString
Data.Interned.Internal.String
Data.Interned.Internal.Text
ghc-options: -Wall