structs: Strict GC'd imperative object-oriented programming with cheap pointers.

[ bsd3, data, library ] [ Propose Tags ]

This project is an experiment with a small GC'd strict mutable imperative universe with cheap pointers inside of the GHC runtime system.

[Skip to Readme]
Versions [RSS] [faq] 0, 0.1, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5, 0.1.6
Change log CHANGELOG.markdown
Dependencies base (==4.8.*), deepseq, ghc-prim, primitive [details]
License BSD-3-Clause
Copyright Copyright (C) 2015 Edward A. Kmett
Author Edward A. Kmett
Maintainer Edward A. Kmett <>
Revised Revision 1 made by HerbertValerioRiedel at 2017-07-29T11:54:19Z
Category Data
Home page
Bug tracker
Source repo head: git clone git://
Uploaded by EdwardKmett at 2015-09-08T07:00:06Z
Distributions LTSHaskell:0.1.6, NixOS:0.1.6, Stackage:0.1.6
Downloads 3768 total (31 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user [build log]
All reported builds failed as of 2015-09-08 [all 1 reports]



Manual Flags

Automatic Flags

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees


Readme for structs-0

[back to package description]


Build Status

This package explores strict mutable data structures in Haskell.

In particular, pointer-based data structures are effectively 'half price' due to the encoding used.

However, the result is that if you use the slot and field system wrong, you can and will SEGFAULT.

This means the Internal modules are very much internal.

Some documentation is available at

Contact Information

Contributions and bug reports are welcome!

Please feel free to contact me through github or on the #haskell IRC channel on

-Edward Kmett