regional-pointers: Regional memory pointers

[ bsd3, library, monadic-regions, system ] [ Propose Tags ]

The library allows you to allocate memory in a region yielding a regional pointer to it. When the region terminates all pointers are automatically freed. Most importantly, a pointer can't be returned from the region. So it's impossible to reference unallocated memory.

The primary technique used in this package is called "Lightweight monadic regions" which was invented by Oleg Kiselyov and Chung-chieh Shan. See:

http://okmij.org/ftp/Haskell/regions.html#light-weight

This technique is implemented in the regions package which is re-exported from this library.

This library provides wrappers around all the Ptr functions from the Foreign.* modules of the base library.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.1.0.1, 0.1.0.2, 0.2, 0.3, 0.4, 0.5, 0.6, 0.6.0.1, 0.7
Dependencies base (>=4 && <4.5), base-unicode-symbols (>=0.1.1 && <0.3), monad-control (>=0.2 && <0.3), regions (>=0.10 && <0.11), transformers (>=0.2 && <0.3) [details]
License BSD-3-Clause
Copyright 2010-2011 Bas van Dijk
Author Bas van Dijk
Maintainer Bas van Dijk <v.dijk.bas@gmail.com>
Category System, Monadic Regions
Home page https://github.com/basvandijk/regional-pointers/
Bug tracker https://github.com/basvandijk/regional-pointers/issues
Source repo head: git clone git://github.com/basvandijk/regional-pointers.git
Uploaded by BasVanDijk at 2011-09-22T21:55:33Z
Distributions
Reverse Dependencies 2 direct, 3 indirect [details]
Downloads 6993 total (13 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]

Readme for regional-pointers-0.6.0.1

[back to package description]

The library allows you to allocate memory in a region yielding a regional pointer to it. When the region terminates all pointers are automatically freed. Most importantly, a pointer can't be returned from the region. So it's impossible to reference unallocated memory.

The primary technique used in this package is called "Lightweight monadic regions" which was invented by Oleg Kiselyov and Chung-chieh Shan.

This technique is implemented in the regions package which is re-exported from this library.

This library provides wrappers around all the Ptr functions from the Foreign.* modules of the base library.