The split-channel package
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.
|Versions||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)|
|Copyright||(c) 2012-2013 Leon P Smith|
|Author||Leon P Smith, Joey Adams|
|Source repository||git clone http://github.com/lpsmith/split-channel|
|Upload date||Sun Mar 17 20:13:34 UTC 2013|