select: Give the select(2) POSIX function a simple STM interface

[ bsd3, library, system ] [ Propose Tags ]

While tinkering on a project, I frequently found myself having to make FFI calls to select(2). This package is an attempt reduce the boilerplate I needed to do that. While at it, I took the opportunity to have what select returns put in a TMVar.

The package has three parts:

System.Posix.IO.Select
just wraps select.
Control.Concurrent.STM.TMVarIO
and Control.Concurrent.MVarIO put the return value of IO actions into a TMVar or an MVar, respectively.
System.Posix.IO.Select.STM
and System.Posix.IO.Select.MVar do the above for select.

NOTE: I feel I'm occupying prime namespace realestate with a package name like select. I'll happily let myself be chased away if anybody else wants to use this package name. Let me know.

CAVEAT: I'm not an experienced Haskeller, and this is my first foray into FFI in general.

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.2, 0.2.1, 0.3, 0.4, 0.4.0.1
Dependencies base (>=4 && <5), stm, vector [details]
License BSD-3-Clause
Copyright 2012 Gard Spreemann
Author Gard Spreemann
Maintainer Gard Spreemann <gspreemann@gmail.com>
Category System
Home page http://nonempty.org/software/haskell-select
Uploaded by GardSpreemann at 2012-04-10T10:00:27Z
Distributions NixOS:0.4.0.1
Reverse Dependencies 3 direct, 2 indirect [details]
Downloads 5265 total (31 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]