https://github.com/composewell/compact-list
An append only list in a compact region
https://github.com/composewell/compact-list
Last synced: about 1 year ago
JSON representation
An append only list in a compact region
- Host: GitHub
- URL: https://github.com/composewell/compact-list
- Owner: composewell
- License: bsd-3-clause
- Created: 2018-09-06T07:17:47.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2018-09-06T08:44:53.000Z (almost 8 years ago)
- Last Synced: 2025-04-18T05:59:12.046Z (about 1 year ago)
- Language: Haskell
- Size: 8.79 KB
- Stars: 25
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: Changelog.md
- License: LICENSE
Awesome Lists containing this project
README
# compact-list
[](https://hackage.haskell.org/package/compact-list)
[](https://travis-ci.org/composewell/compact-list)
[](https://ci.appveyor.com/project/harendra-kumar/compact-list)
If you hold on to a large data structure in garbage collected (GC) memory
for relatively longer times it puts undue pressure on GC, unnecessarily
increasing the work done by GC and also increasing the duration of GC
pauses. A `CompactList` allows you to keep a large list in a Compact Region
not touched by GC, thus avoiding any GC overhead. This is essentially like
a convenient in-memory append only file where you can write a list of
Haskell values without having to marshall or serialize them.