data-reify: Reify a recursive data structure into an explicit graph.

[ bsd3, data, language, library, parsing, reflection ] [ Propose Tags ]

'data-reify' provided the ability to turn recursive structures into explicit graphs. Many (implicitly or explicitly) recursive data structure can be given this ability, via a type class instance. This gives an alternative to using Ref for observable sharing.

Observable sharing in general is unsafe (hence the module path name Data.Unsafe.Reify), but can be used safely if some simple conditions are met. Typically this package will be used to tie the knot with DSL's that depend of observable sharing, like Lava.

Providing an instance for MuRef is the mechanism for allowing a structure to be reified into a graph, and four examples of this are provided.

Version 0.2 of data-reify uses StableNames, and is much faster.

© 2009 Andy Gill; BSD3 license.

Modules

[Index]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.6.1, 0.6.2, 0.6.3 (info)
Dependencies base, containers [details]
License BSD-3-Clause
Copyright (c) 2009 Andy Gill
Author Andy Gill
Maintainer Andy Gill <andygill@ku.edu>
Category Language, Data, Parsing, Reflection
Home page http://ittc.ku.edu/~andygill/data-reify.php
Uploaded by AndyGill at 2009-05-01T04:00:08Z
Distributions Fedora:0.6.3, LTSHaskell:0.6.3, NixOS:0.6.3, Stackage:0.6.3
Reverse Dependencies 13 direct, 69 indirect [details]
Executables data-reify-test4, data-reify-test3, data-reify-test2, data-reify-test1
Downloads 14919 total (60 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]