ghc-compact

In memory storage of deeply evaluated data structure

Version on this page:0.1.0.0
LTS Haskell 16.3:[email protected]:3
Stackage Nightly 2020-06-29:0.1.0.0
Latest on Hackage:[email protected]:3

See all snapshots ghc-compact appears in

BSD-3-Clause licensed
Maintained by [email protected]

Module documentation for 0.1.0.0

This version can be pinned in stack with:[email protected]:996e8395da7b7d8c4972083e6ee814a1a48aaac3c652f0314bef222d3b225e7f,1693

This package provides minimal functionality for working with "compact regions", which hold a fully evaluated Haskell object graph. These regions maintain the invariant that no pointers live inside the struct that point outside it, which ensures efficient garbage collection without ever reading the structure contents (effectively, it works as a manually managed "oldest generation" which is never freed until the whole is released).

Internally, the struct is stored a single contiguous block of memory, which allows efficient serialization and deserialization of structs for distributed computing.

This package provides a low-level API; see also the compact package which provides a user-facing API.

Used by 1 package in lts-11.22(full list with versions):