split-channel: Control.Concurrent.Chan split into sending and receiving halves.

[ concurrency, library, mit ] [ Propose Tags ]

This module splits Control.Concurrent.Chan into sending and receiving halves, which allows the type system to more finely constrain program behavior. As a secondary benefit, messages written to channels with no receive ports associated with them can be reliably garbage collected.

In addition, this module incorporates several of clean-ups and additions to the venerable Chan. Most notably, the deprecated thread-unsafe functions have been removed, the ability to duplicate Receive Ports has been added, the sendMany operation allows for multiple messages to be sent atomically, and the split operation turns a single channel into two.

Modules

[Index]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.1.0, 0.1.2.0, 0.1.2.1, 0.1.2.2, 0.1.2.3, 0.2.0.0, 0.2.0.1
Dependencies base (>=4.3 && <5) [details]
License MIT
Copyright (c) 2012-2013 Leon P Smith
Author Leon P Smith, Joey Adams
Maintainer leon@melding-monads.com
Category Concurrency
Source repo head: git clone http://github.com/lpsmith/split-channel
this: git clone http://github.com/lpsmith/split-channel(tag v0.2.0.1)
Uploaded by LeonSmith at 2013-03-17T20:13:34Z
Distributions NixOS:0.2.0.1
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 5778 total (24 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]