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:

just wraps select.
and Control.Concurrent.MVarIO put the return value of IO actions into a TMVar or an MVar, respectively.
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.


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.1, 0.2, 0.2.1, 0.3, 0.4,
Dependencies base (>=4 && <5), stm, vector [details]
License BSD-3-Clause
Copyright 2012 Gard Spreemann
Author Gard Spreemann
Maintainer Gard Spreemann <>
Category System
Home page
Uploaded by GardSpreemann at 2012-04-10T10:00:27Z
Distributions NixOS:
Reverse Dependencies 3 direct, 2 indirect [details]
Downloads 5306 total (23 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]