The global-variables package

[ Tags: bsd3, data, library, reflection ] [ Propose Tags ]

Data.Global provides a global namespace of IORefs, MVars and TVars. This namespace may be accessed in pure code. Yet reading and writing to those IORefs, MVars and TVars happens still in their respective monads.

Data.Global is designed to meet the following use cases:

Note, that this library does not encourage sloppy software design by re-introducing all bad effects of global variables. Nevertheless, sometimes global variables are a suitable solution to a problem. In that case Data.Global simplifies and extends their handling significantly.

Examples are in the documentation of Data.Global.


Versions 1.0,,
Dependencies base (==4.*), containers (>=0.3 && <0.5), stm (==2.1.*) [details]
License BSD3
Copyright 2011 Jean-Marie Gaillourdet
Author Jean-Marie Gaillourdet and Patrick Michel
Maintainer Jean-Marie Gaillourdet <>
Category Data, Reflection
Bug tracker
Source repository head: hg clone
Uploaded Wed Oct 12 17:44:21 UTC 2011 by JeanMarieGaillourdet
Distributions NixOS:
Downloads 1329 total (228 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI




Maintainer's Corner

For package maintainers and hackage trustees