I see there's wrapper libraries for select(2) and poll(2), but they don't seem much used.
The epoll-based System.Event
used here has since been merged in as GHC.Event
(though the loop
function got put in to the private module GHC.Event.Manager
and isn't exported, so apparently only getSystemEventManager
is usable). GHC.Event
says "This module should be considered GHC internal.", which has me wondering - is there some library that wraps that that I should be using, instead?
Some background on my use-case: I wanted to perform an action on a udev event (update a display when e.g. brightness changes). The example here is using the select(2) wrapper: https://github.com/pxqr/udev/blob/master/examples/monitor.hs#L36 I was hoping to use something more modern / better maintained and/or less dependencies.